ABSTRAK
Proxy server adalah sebuah program yang dapat bertindak sebagai server
sekaligus klien. Proxy server meneruskan permintaan klien ke web server untuk
mewakili klien yang sebenarnya. Salah satu fungsi Proxy server adalah melakukan
caching terhadap konten web dan menyimpannya dalam disk. Dengan cara tersebut,
Proxy server dapat langsung melayani permintaan dari klien apabila salinan berkas
yang diminta ada dalam media penyimpanan pada Proxy server.
Parameter yang biasa digunakan untuk menilai kinerja Proxy server adalah
hit ratio, yaitu perbandingan jumlah HTTP request yang diminta dengan HTTP
request yang dapat dilayani. Namun, kenaikan hit ratio tentunya memberikan
dampak terhadap sumberdaya yang ada pada komputer server tergantung pada jenis
konten yang diakses. Penelitian ini menguji bagaimana hubungan antara hit ratio
dengan sumberdaya yang dimiliki oleh komputer server, ketika digunakan untuk
mengakses jenis dokumen web yang berbeda. Setelah data terkumpul, dilakukan
analisa dengan melihat model pertumbuhan yang sesuai untuk tiap tiap komponen
yang diuji.
Hasil pengujian memperlihatkan bahwa pada masing masing jenis
dokumen web yang diteliti, terdapat pola pertumbuhan yang saling terkait antara
kenaikan hit ratio dengan penggunaan data dari Proxy ke internet, penggunaan data
dari Proxy ke klien, CPU, memory, penghematan bit, dan cache disk.
ABSTRACT
Proxy server is a program that act as intermediary that forwards client
request to the web server by sitting like its the original client. Proxy server can be
regulated to cache some web contents and save it to its disk. By that way, Proxy
server can serve a client request directly if the document copy is available in the
Proxy server’s storage.
Most parameters that mostly used to measure Proxy server’s performance
is hit ratio, which is a ratio of total HTTP request and HTTP request that Proxy can
serve without contacting the origin server. However, the increase of hit ratios
naturally give some impact to the server computer’s resources depends on what kind of requested content. This study concern on how the server computer’s
resources react by increases of hit ratios value, while accessing different kind of
websites. After the data were collected, we do some analyze by look at the growth
line model that well fitted with every tested component.
The result shows us that in every different kind of web documents
inspected, there is a growth pattern that interrelated between hit ratio increases with
data usage from Proxy to the internet, data usage from Proxy to client, CPU usage,
memory usage, byte saving, and the cache disk usage.
ANALISIS UNJUK KERJA PENGARUH HIT RATIO PADA
SQUID PROXY TERHADAP SUMBER DAYA KOMPUTER
SERVER
SKRIPSI
Diajukan Untuk Memenuhi Salah Satu Syarat
Memperoleh Gelar Sarjana Komputer
Program Studi Teknik Informatika
Oleh:
RN. Tri Hardianto
10 5314 055
JURUSAN TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA YOGYAKARTA
PERFORMANCE ANALYSIS OF HIT RATIO EFFECT OF
SQUID PROXY TO THE SERVER COMPUTER RESOURCES
A THESIS
In Partial Fulfillment of the Requirements
To Obtain the Degree of Sarjana Komputer
Informatics Engineering Study Program
By:
RN. Tri Hardianto
10 5314 055
INFORMATICS ENGINEERING STUDY PROGRAM FACULTY OF SCIENCE AND TECHNOLOGY
SANATA DHARMA UNIVERSITY YOGYAKARTA
PERNYATAAN KEASLIAN HASIL KARYA
Dengan ini saya menyatakan bahwa Skripsi dengan judul “ANALISIS
UNJUK KERJA PENGARUH HIT RATIO PADA SQUID PROXY TERHADAP SUMBER DAYA KOMPUTER SERVER” ini adalah murni karya saya sendiri. Tidak ada di dalamnya yang memuat karya atau bagian dari karya
orang lain dengan cara-cara yang tidak sesuai dengan etika keilmuan, kecuali yang
telah disebutkan dalam kutipan dan daftar pustaka sebagaimana layaknya karya
ilmiah.
Yogyakarta, 13 Maret 2015
Penulis,
LEMBAR PERNYATAAN PERSETUJUAN
PUBLIKASI ILMIAH UNTUK KEPENTINGAN
AKADEMIS
Yang bertanda tangan di bawah ini, saya mahasiswa Universitas Sanata Dharma
Nama : RN. Tri Hardianto
Nomor Mahasiswa : 105314055
Demi pengembangan ilmu pengetahuan, saya memberikan kepada Perpustakaan Universitas Sanata Dharma karya ilmiah saya yang berjudul :
ANALISIS UNJUK KERJA PENGARUH HIT RATIO PADA SQUID PROXY TERHADAP SUMBER DAYA KOMPUTER SERVER
beserta perangkat yang diperlukan (bila ada). Dengan demikian saya memberikan kepada Perpustakaan Universitas Sanata Dharma hak untuk menyimpan, me-ngalihkan dalam bentuk media lain, mengelolanya dalam bentuk pangkalan data, mendistribusikan secara terbatas, dan mempublikasikannya di Internet atau media lain untuk kepentingan akademis tanpa perlu meminta ijin dari saya maupun mem-berikan royalti kepada saya selama tetap mencantumkan nama saya sebagai penulis.
Demikian pernyataan ini yang saya buat dengan sebenarnya.
Dibuat di Yogyakarta
Pada tanggal : 13 Maret 2015
Yang menyatakan
ABSTRAK
Proxy server adalah sebuah program yang dapat bertindak sebagai server
sekaligus klien. Proxy server meneruskan permintaan klien ke web server untuk
mewakili klien yang sebenarnya. Salah satu fungsi Proxy server adalah melakukan
caching terhadap konten web dan menyimpannya dalam disk. Dengan cara tersebut,
Proxy server dapat langsung melayani permintaan dari klien apabila salinan berkas
yang diminta ada dalam media penyimpanan pada Proxy server.
Parameter yang biasa digunakan untuk menilai kinerja Proxy server adalah
hit ratio, yaitu perbandingan jumlah HTTP request yang diminta dengan HTTP
request yang dapat dilayani. Namun, kenaikan hit ratio tentunya memberikan
dampak terhadap sumberdaya yang ada pada komputer server tergantung pada jenis
konten yang diakses. Penelitian ini menguji bagaimana hubungan antara hit ratio
dengan sumberdaya yang dimiliki oleh komputer server, ketika digunakan untuk
mengakses jenis dokumen web yang berbeda. Setelah data terkumpul, dilakukan
analisa dengan melihat model pertumbuhan yang sesuai untuk tiap tiap komponen
yang diuji.
Hasil pengujian memperlihatkan bahwa pada masing masing jenis
dokumen web yang diteliti, terdapat pola pertumbuhan yang saling terkait antara
kenaikan hit ratio dengan penggunaan data dari Proxy ke internet, penggunaan data
dari Proxy ke klien, CPU, memory, penghematan bit, dan cache disk.
ABSTRACT
Proxy server is a program that act as intermediary that forwards client
request to the web server by sitting like its the original client. Proxy server can be
regulated to cache some web contents and save it to its disk. By that way, Proxy
server can serve a client request directly if the document copy is available in the
Proxy server’s storage.
Most parameters that mostly used to measure Proxy server’s performance
is hit ratio, which is a ratio of total HTTP request and HTTP request that Proxy can
serve without contacting the origin server. However, the increase of hit ratios
naturally give some impact to the server computer’s resources depends on what
kind of requested content. This study concern on how the server computer’s
resources react by increases of hit ratios value, while accessing different kind of
websites. After the data were collected, we do some analyze by look at the growth
line model that well fitted with every tested component.
The result shows us that in every different kind of web documents
inspected, there is a growth pattern that interrelated between hit ratio increases with
data usage from Proxy to the internet, data usage from Proxy to client, CPU usage,
memory usage, byte saving, and the cache disk usage.
KATA PENGANTAR
Segala puji dan rasa syukur ke hadirat Tuhan Yang Maha Esa atas segala
berkat dan karunia-Nya yang telah diberikan, sehingga penulis dapat
menyelesaikan tugas akhir sebagai salah satu syarat untuk mencapai kelulusan pada
jurusan Teknik Informatika Universitas Sanata Dharma Yogyakarta.
Atas tersusunnya tugas akhir ini, penulis mengucapkan terimakasih
kepada:
1. Bapak B. Herry Suharto, S.T., M.T., selaku Dosen Pembimbing Tugas
Akhir.
2. Ibu, dan seluruh anggota keluarga besar yang selalu memberikan
dukungan baik secara moral maupun material.
3. Bapak Susilo Dwiratno, selaku Kepala Kaboratorium Fakultas Sains dan
Teknologi yang telah memberikan ijin menggunakan infrastruktur
laboratorium untuk menyelesaikan penelitian ini.
4. Semua teman teman Teknik Informatika angkatan 2010.
5. Semua pihak yang tidak dapat disebutkan satu per satu, yang telah
membantu penulis dalam pengerjaan tugas akhir ini.
Akhirnya penulis berharap semoga skripsi ini dapat berguna bagi kemajuan ilmu
pengetahuan.
Penulis,
DAFTAR ISI
PERNYATAAN KEASLIAN HASIL KARYA ... III
LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI ILMIAH UNTUK KEPENTINGAN AKADEMIS ... IV
ABSTRAK ... V
ABSTRACT ... VI
KATA PENGANTAR ... VII
DAFTAR ISI ... VIII
DAFTAR GAMBAR ...XI
DAFTAR GRAFIK ... XIV
BAB I PENDAHULUAN ... 1
1.1. LATAR BELAKANG ... 1
BAB II LANDASAN TEORI ... 8
2.1. SERVER ... 8
2.1.1. Pengertian Server ... 8
2.1.2. Jenis Jenis Server... 8
2.2. PROXY SERVER ... 10
2.2.1. Pengertian Proxy Server ... 10
2.2.3. Fungsi Proxy Server... 11
2.2.4. Kategori Proxy Server ... 14
2.2.5. Keuntungan Menggunakan Proxy Server ... 14
2.3. SQUID PROXY ... 15
2.3.1. Pengertian Squid Proxy ... 15
2.3.2. Fitur Squid Proxy ... 16
2.3.3. Mendapatkan Squid Proxy ... 16
2.3.4. Kode Keluaran Squid ... 16
2.3.5. Squid Request Method ... 18
2.3.6. Object Caching ... 19
2.3.7. Hit Ratio ... 21
2.4. LINUX ... 21
2.4.1. Pengertian Linux ... 21
2.4.2. Sejarah Linux ... 22
2.4.3. Perbedaan Linux Dengan Sistem Operasi Lain ... 23
2.4.4. Distro Linux ... 23
2.4.5. CentOS ... 24
2.8.1. Gambaran Umum Web Server ... 35
2.8.2. Cara Kerja Web Server ... 36
2.9.1. Dokumen Web Statis ... 38
2.9.2. Dokumen Web Dinamis ... 39
2.9.3. Dokumen Web Aktif... 40
2.10. PERSAMAAN REGRESI ... 41
2.10.1. Regresi Linier ... 41
2.10.2. Regresi Non Linier ... 43
BAB IIIRANCANGAN PENELITIAN ... 45
3.1. ANALISIS KEBUTUHAN SISTEM ... 45
3.1.1. Kebutuhan Perangkat Keras ... 45
3.1.2. Kebutuhan Perangkat Lunak ... 46
3.2. SKENARIO PENGUJIAN ... 46
3.2.1. Topologi Jaringan ... 46
3.2.2. Mekanisme Pengumpulan Data ... 47
3.2.3. Diagram Alur Mekanisme Pengumpulan Data ... 49
3.2.4. Daftar Website ... 50
3.3. PARAMETER PENGUJIAN ... 50
3.4. TABEL PENGUJIAN ... 52
BAB IVIMPLEMENTASI ... 55
4.1. INSTALASI DAN KONFIGURASI SQUID PROXY ... 55
4.1.1. Konfigurasi tata letak partisi ... 55
4.1.2. Instalasi program ... 56
4.1.3. Konfigurasi Squid Proxy ... 56
4.1.4. Parameter konfigurasi squid.conf ... 57
4.2. KONFIGURASI PROGRAM PENGAMBILAN DATA ... 66
4.4. PERCOBAAN PROGRAM PENGAMBILAN DATA YANG AKAN DIJALANKAN ... 76
BAB VANALISA HASIL ... 79
5.1. TABEL HASIL PENGUJIAN ... 79
5.1.1. Pengujian pada kategori web statis ... 79
5.1.2. Pengujian pada kategori web dinamis ... 80
5.1.3. Pengujian pada kategori web aktif ... 80
5.2. GRAFIK DATA PENGUJIAN ... 81
5.2.1. Analisa ethernet statistic Proxy ke internet ... 84
5.2.2. Analisa ethernet statistic Proxy ke klien ... 89
5.2.3. Analisa persentase penghematan bit (byte saving) ... 93
5.2.4. Analisa disk usage ... 98
5.2.5. Analisa memory usage ... 103
5.2.6. Analisa CPU usage ... 108
BAB VIKESIMPULAN DAN SARAN ... 112
6.1. KESIMPULAN ... 112
6.2. SARAN ... 114
DAFTAR PUSTAKA ... 115
LAMPIRAN ... 118
DAFTAR GAMBAR GAMBAR 2.2-1CARA KERJA PROXY SERVER ... 10
GAMBAR 4.4-2GRAFIK PEROLEHAN HITMENURUT SQUID EFFICIENCY ANALYZER ... 77
TABEL 3.1-1SPESIFIKASI PERANGKAT KERAS ... 45
TABEL 3.1-2SPESIFIKASI PERANGKAT LUNAK ... 46
TABEL 5.2-8TABEL CURVE ESTIMATION UNTUK PERSENTASE PENGHEMATAN BANDWIDTH,KATEGORI WEB DINAMIS
... 94
TABEL 5.2-9TABEL CURVE ESTIMATION UNTUK PERSENTASE PENGHEMATAN BANDWIDTH,KATEGORI WEB AKTIF 95 TABEL 5.2-11TABEL CURVE ESTIMATION UNTUK PENGGUNAAN CACHE DISK,KATEGORI WEB STATIS ... 98
TABEL 5.2-12TABEL CURVE ESTIMATION UNTUK PENGGUNAAN CACHE DISK,KATEGORI WEB DINAMIS ... 99
TABEL 5.2-13TABEL CURVE ESTIMATION UNTUK PENGGUNAAN CACHE DISK,KATEGORI WEB AKTIF ... 100
TABEL 5.2-14TABEL CURVE ESTIMATION UNTUK PENGGUNAAN MEMORY,KATEGORI WEB STATIS ... 103
TABEL 5.2-15TABEL CURVE ESTIMATION UNTUK PENGGUNAAN MEMORY,KATEGORI WEB DINAMIS ... 104
TABEL 5.2-16TABEL CURVE ESTIMATION UNTUK PENGGUNAAN MEMORY,KATEGORI WEB AKTIF ... 105
TABEL 5.2-17TABEL CURVE ESTIMATION UNTUK PENGGUNAAN CPU,KATEGORI WEB STATIS ... 108
TABEL 5.2-18TABEL CURVE ESTIMATION UNTUK PENGGUNAAN CPU,KATEGORI WEB DINAMIS ... 109
TABEL 5.2-19TABEL CURVE ESTIMATION UNTUK PENGGUNAAN CPU,KATEGORI WEB AKTIF ... 110
DAFTAR GRAFIK GRAFIK 5.2-1GRAFIK PERBANDINGAN TOTAL BYTE USAGE DARI PROXY KE INTERNET ... 87
GRAFIK 5.2-2GRAFIK PERBANDINGAN TOTAL BYTE USAGE DARI PROXY KE KLIEN ... 91
GRAFIK 5.2-3GRAFIK PERBANDINGAN PERSENTASE PENGHEMATAN BIT ... 96
GRAFIK 5.2-4PERBANDINGAN HTTPREQUEST DAN ETH KLIEN... 97
GRAFIK 5.2-5GRAFIK PERBANDINGAN PENGGUNAAN CACHE DISK ... 101
GRAFIK 5.2-6GRAFIK PERBANDINGAN PENGGUNAAN MEMORY ... 106
BAB I
PENDAHULUAN
1.1. Latar Belakang
Di era sekarang ini, internet telah merevolusi banyak aspek dalam
kehidupan manusia modern. Mulai dari cara orang menjalankan bisnis, sampai
dengan cara orang menghabiskan waktu saat bersantai. Mengirim surat, membaca
berita, membayar tagihan, berbelanja, melakukan pembelajaran, atau memesan
kamar hotel, semua hampir bisa dilakukan dengan internet. Layanan yang terus
berkembang di intenet saat ini adalah WWW (website). Menurut suresh (2009),
besarnya popularitas layanan web ini telah menyumbang lonjakan trafik jaringan
internet yang cukup tinggi di seluruh dunia. Dokumen web sendiri pada awalnya
hanya memiliki tampilan berupa teks dan gambar sederhana. Namun, dokumen web
saat ini mampu menyajikan informasi berupa konten interaktif seperti animasi,
video, audio, script penyesuaian tampilan otomatis, dan masih banyak lagi.
Seiring dengan perkembangan teknologi yang semakin pesat, orang mulai
memikirkan cara untuk meningkatkan performa dalam mengakses layanan web.
Menurut Feldmann (1999), salah satu cara yang paling populer adalah dengan
menggunakan teknik Proxy caching. Proxy server adalah sebuah program yang
bertindak sebagai server sekaligus klien. Tugas Proxy ini salah satunya adalah
meneruskan permintaan klien ke webserver untuk mewakili klien yang sebenarnya
meminta sebuah dokumen, maka Proxyserver dapat langsung memberikan salinan
dokumen yang dimilikinya tanpa harus meminta ke server aslinya. Jika Proxy
server tidak memiliki salinan berkas yang diminta, barulah Proxy server
meneruskan permintaan tersebut ke webserver di internet.
Menurut Wessels (2004), Squid Proxy adalah salah satu program open
source yang paling banyak digunakan sebagai Proxy server. Program ini salah
satunya dapat difungsikan sebagai caching Proxy untuk web dengan dukungan
HTTP, HTTPS, dan FTP. Squid juga menawarkan berbagai macam konfigurasi
yang bisa diatur sesuai kebutuhan untuk keperluan optimasi sebuah jaringan
internet dengan proses instalasi yang mudah. Selain itu, Squid Proxy juga memiliki
kelebihan yaitu relatif stabil dalam menangani data berukuran besar.
Upaya peningkatan performa yang ditawarkan oleh Proxyserver ada tiga
cara. Yang pertama, Proxy server dapat diatur untuk mengurangi waktu yang
diperlukan dalam mengakses sebuah dokumen web. Hal ini dapat tercapai karena
Proxyserver berada lebih dekat dengan klien dibanding dengan penyedia layanan
aslinya. Yang kedua, Proxy server mampu mengurangi beban trafik jaringan.
Penggunaan beban jaringan dapat diminimalisir karena jika Proxyserver memiliki
salinan dokumen yang diminta, maka dapat diberikan langsung kepada klien lokal
tanpa harus menggunakan trafik jaringan ke internet untuk meminta dokumen ke
penyedia layanan aslinya. Yang terakhir, Proxy server dapat mengurangi beban
kerja penyedia layanan di internet, karena klien dapat meminta dokumen kepada
Menurut Beaumont (2000), teknik Proxy caching hanya memberikan
peningkatan performa jaringan jika Proxy server memiliki salinan berkas yang
dapat langsung diberikan kepada klien ketika ada permintaan dari klien.
Perbandingan antara jumlah yang dapat dilayani oleh Proxy server dibanding
jumlah yang tidak dapat dilayani disebut hit ratio.
Terkait dengan banyaknya variasi pada jenis jenis dokumen web saat ini,
perbedaan jenis dokumen web yang di cache akan mempengaruhi performansi
sumberdaya yang dimiliki oleh mesin server. Penelitian ini dilakukan untuk
mengetahui dampak perbandingan perolehan hit ratio pada Squid Proxy yang
digunakan untuk melakukan caching pada dokumen web statis, dinamis, dan aktif,
terhadap beban kerja pada sumberdaya yang dimiliki oleh komputer server.
1.2. Perumusan Masalah
Mengetahui bagaimana hit ratio pada Squid Proxy berpengaruh terhadap
beban kerja komponen yang dimiliki oleh komputer server ketika klien mengakses
dokumen web statis, dinamis, danaktif.
1.3. Tujuan Penulisan
Tujuan dari penelitian ini adalah untuk mengetahui dan memberikan
analisa terhadap beban kerja beberapa komponen komputer server ketika mencapai
nilai hit ratio yang berbeda, jika digunakan untuk mengakses dokumen web statis,
1.4. Pembatasan Masalah
Untuk lebih fokus, maka diberikan pembatasan masalah sebagai berikut:
1. Pengujian ini dilakukan pada jaringan wired LAN.
2. Jumlah klien ditentukan sebanyak sepuluh komputer.
3. Program Squid Proxy dipasang pada sistem operasi CentOS 6
dengan konfigurasi standar.
4. Pengujian ini tidak membahas aspek keamanan jaringan.
5. File konfigurasi Squid yang digunakan adalah konfigurasi default.
6. Target hit ratio ditentukan sebesar 10%, 20%, 30%, 40%, 50%.
7. Nilai hit ratio dihitung berdasarkan perbandingan HTTP request.
8. Protokol yang diuji pada penelitian ini hanya HTTP.
1.5. Metodologi Penelitian
Metode yang digunakan dalam penelitian ini adalah:
1 Studi literatur
Melakukan pendalaman materi yang berkaitan dengan penelitian yang akan
dilakukan
2 Perancangan
Perancangan meliputi analisis kebutuhan sistem, topologi yang digunakan,
parameter konfigurasi, dan parameter pengujian.
3 Implementasi hasil perancangan
Menerapkan desain yang telah dirancang ke dalam perangkat fisik.
4 Pengujian dan pengukuran
Melakukan pengujian dan pengukuran atas penelitian yang akan dilakukan.
5 Analisa hasil
Menganalisa hasil yang diperoleh pada saat pengujian penelitian.
6 Penarikan kesimpulan
Melakukan penarikan kesimpulan berdasarkan data yang didapat setelah
1.6. Sistematika Penulisan
Sistematika penulisan penelitian ini terdiri atas enam bab, yaitu:
BAB I PENDAHULUAN
Bab ini berisi latar belakang masalah, rumusan masalah,
tujuan penulisan, pembatasan masalah, metodologi
penulisan, dan sistematika penulisan.
BAB II LANDASAN TEORI
Bab ini membahas tentang pengertian dan cara kerja Proxy,
Squid Proxy, hit ratio, web, server, serta teori teori lain yang
mendukung penyusunan penelitian ini.
BAB III RANCANGAN PENELITIAN
Bab ini membahas tentang rancangan dari sistem yang akan
diteliti. Meliputi analisis kebutuhan sistem, topologi
pengujian, skenario pengujian, serta parameter pengujian.
BAB IV IMPLEMENTASI
Bab ini menyajikan hasil implementasi Squid Proxy berupa
langkah langkah implementasi dan potongan potongan
BAB V ANALISA HASIL
Bab ini berisi analisis hasil dari pengujian terhadap sistem
yang telah diimplementasikan.
BAB VI KESIMPULAN DAN SARAN
Bab ini berisi kesimpulan dan saran yang diperoleh
BAB II
LANDASAN TEORI
2.1. Server
2.1.1. Pengertian Server
Sesuai namanya, server adalah sebuah program yang dibuat untuk tujuan
‘melayani’. Data yang dapat dilayani oleh server antara lain halaman web, file,
informasi database, email, dan masih banyak yang lain. Saat ini banyak sekali
program server yang tersedia, misalnya apache, filezilla, vsftpd, bind, mysql.
Biasanya, program server dirancang untuk berjalan secara terus menerus di
background sambil melayani permintaan yang datang. Proses ini disebut juga
dengan istilah daemon process.
2.1.2. Jenis Jenis Server
Menurut Negus (2012), ada beberapa jenis server yang digolongkan
berdasarkan kegunaannya, beberapa diantaranya adalah:
1. System Logging Server: Server ini bertugas untuk mengumpulkan
catatan dari berbagai komponen yang bekerja dalam sebuah sistem.
2. Print Server: Print server adalah sebuah program yang
memungkinkan sebuah printer dapat digunakan oleh banyak orang
3. Web Server: Sebuah program yang menggunakan protokol HTTP dan
berfungsi untuk menyediakan layanan berupa halaman web kepada
pengguna.
4. FTP Server: Sebuah program yang berfungsi menyediakan layanan
berbagi file dari satu host ke host yang lain melalui jaringan berbasis
TCP.
5. NFS: Network File System (NFS) server adalah fitur standar pada
sistem Linux dan UNIX untuk berbagi berkas melalui jaringan.
6. Mail Server: Sering juga disebut Mail Transfer Agent (MTA). Program
ini bertugas untuk mengirim dan menerima email yang masuk melalui
jaringan lokal, atau meneruskan dan menerima dari jaringan di
luarnya.
7. NTP Server: Netwok Time Protocol (NTP) server adalah sebuah
program yang berfungsi untuk melakukan sinkronsasi waktu pada
komputer secara otomatis melalui jaringan.
8. DNS Server: Sebuah program yang bertugas untuk menerjemahkan
alamat URL atau nama domain seperti www.usd.ac.id ke dalam alamat
IP yang bersangkutan, misalnya 202.94.83.16.
9. SQL Server: Program ini berfungsi untuk menjalankan dan
menyimpan data ke dalam sebuah sistem manajemen basis data
10.Proxy Server: Proxy server adalah sebuah program yang berada di
antara klien yang meminta berkas dengan server yang memiliki berkas
tersebut.
2.2. Proxy Server
2.2.1. Pengertian Proxy Server
Menurut Saini (2011), Proxy server adalah sebuah sistem yang berada di
antara klien yang meminta dokumen web, dan server sebagai penyedia dokumen.
Proxy server bertindak sebagai gateway untuk setiap komputer klien. Ketika klien
melakukan request ke arah target server, Proxy server bekerja seolah-olah dia
adalah klien tersebut. Ketika target server memberikan response, barulah Proxy
sever meneruskan kepada klien yang sebenarnya.
2.2.2. Cara Kerja Proxy Server
Server
Gambar 2.2-1 Cara kerja Proxy server
Dari sisi klien, Proxy server dianggap seperti penyedia layanan asli. Ketika
klien meminta layanan ke sebuah server di internet, permintaan tersebut akan
klien, meminta layanan yang diminta oleh klien aslinya kepada target server.
Setelah target server memberikan layanan yang diminta, Proxy server akan
meneruskan layanan tersebut kepada klien aslinya.
2.2.3. Fungsi Proxy Server
Menurut Rafiudin (2008), fungsi Proxy server digolongkan menjadi tiga:
1. Gateway
Dalam sebuah sistem jaringan lokal, klien tidak dapat secara
langsung terhubung ke internet. Klien harus melewati sebuah
gateway yang bertindak sebagai penghubung antara jaringan lokal
dan jaringan di luarnya. Dengan demikian, klien yang berada dalam
suatu jaringan harus terhubung dengan sebuah gateway sebagai
penyedia sambungan. Dalam hal ini, Proxy server dapat difungsikan
sebagai gateway karena menjadi perantara antara jaringan lokal dan
jaringan luar.
Klien
Server Gateway
2. Filtering
Proxy server dapat digunakan juga untuk tujuan packet filtering
atau firewall. Packet filtering ini bertugas untuk melindungi jaringan
lokal terhadap serangan yang berasal dari luar. Dalam melakukan
fungsinya sebagai packet filter, Proxy server menutup koneksi
Gambar 2.2-3 Proxy sebagai packet filter
3. Caching
Proxy server memiliki mekanisme penyimpanan obyek tertentu
yang pernah diakses dari server-server di internet (caching).
Mekanisme ini memungkinkan sebuah Proxy server untuk
menyimpan data yang pernah diakses oleh pengguna ke dalam ruang
penyimpanan pada Proxy server dalam jangka waktu tertentu. Hal
ini dapat dilakukan karena pada saat klien meminta layanan pada
langsung ke target server dan menerima layanan yang diminta lebih
dulu sebelum diteruskan ke klien.
Jadi, apabila ada klien meminta layanan yang sama dengan yang
pernah diminta sebelumya, dan masih tersimpan di dalam cache,
maka Proxy server dapat memberikannya kepada klien tanpa harus
meminta lagi ke server aslinya di internet. Klien tidak akan
menyadari apakah dia menerima layanan tersebut secara langsung
dari target server, atau dari cache pada Proxy server. Dari sisi klien,
semuanya akan terlihat sebagai balasan dari target server.
Klien 2
Server Klien 1 Web Caching Proxy
2.2.4. Kategori Proxy Server
Menurut Suresh (2009), Proxyserver dibagi menjadi dua kategori, yaitu:
1. Transparent Proxy
Transparent Proxy pada dasarnya mengutamakan tugasnya
sebagai kurir. Transparent Proxy memberikan informasi bahwa dia
adalah Proxy server. Transparent Proxy tidak menyembunyikan
identitasnya sebagai Proxy server.
2. Anonymous Proxy
Anonymous Proxy tidak memberikan informasi kepada target
server bahwa dia adalah Proxy. Target server hanya mengetahui
bahwa yang meminta layanan adalah klien biasa. Proxy tipe ini
memungkinkan klien yang bersembunyi di belakangnya untuk tidak
terlihat identitasnya.
2.2.5. Keuntungan Menggunakan Proxy Server
Beberapa keuntungan secara umum yang bisa dicapai apabila
menggunakan Proxy server antara lain:
1. Mengurangi penggunaan traffic jaringan.
2. Meningkatkan performa web browsing pada klien dengan teknik
3. Memberikan perlindungan kepada klien karena menyembunyikan
klien yang asli dibelakang mesin Proxy (jika Proxy server diatur
sebagai anonymous Proxy).
4. Dapat digunakan untuk memblokir website tertentu jika diatur sebagai
firewall.
2.3. Squid Proxy
2.3.1. Pengertian Squid Proxy
Squid Proxy adalah aplikasi Proxy server berbasis open source yang
mendukung protokol HTTP, HTTPS, FTP, dan layanan sejenis lainnya. Proyek
Squid dimulai pada tahun 1991 dan didanai oleh NSF (National Science
Foundation) dalam penelitian untuk teknologi caching. Pendanaan berlanjut untuk
beberapa tahun berikutnya. Setelah itu, Squid berkembang dengan donasi sukarela
dan investasi komersil yang dilakukan oleh pihak manajemen.
Sebagai aplikasi Proxy server, Squid mampu menurunkan konsumsi traffic
jaringan sekaligus mempercepat waktu respon dalam mengakses suatu layanan
internet. Hal ini terwujud karena Squid dapat melakukan caching terhadap layanan
web yang sering dikunjungi, kemudian menggunakan ulang data tersebut apabila
ada klien yang meminta layanan yang sama, dan datanya belum kadaluarsa. Karena
disimpan dalam sistem jaringan lokal, maka klien akan lebih cepat mendapat
2.3.2. Fitur Squid Proxy
Squid sebagai program open source menawarkan banyak fitur yang bisa
digunakan. Fitur yang disediakan antara lain QoS, SSLBump, HTTPS, internal DNS
server, client bandwidth limit, cache diggest, dan masih banyak lagi. Untuk
kedepannya, masih banyak fitur fitur pada Squid Proxy yang masih dalam tahap
pengembangan atau sedang akan dikembangkan.
2.3.3. Mendapatkan Squid Proxy
Sebagai program open source, Squid Proxy menyediakan portal bagi para
pengguna untuk mengunduh secara gratis pada tautan www.Squid-cache.org, atau
bisa didapatkan pada repositori yang disediakan oleh masing masing distro linux.
Cara mendapatkan Squid melalui repositori cukup mudah, untuk CentOS kita hanya
perlu mengetikkan perintah yum install Squid pada jendela terminal.
2.3.4. Kode Keluaran Squid
File access log pada Squid Proxy berisi kode kode keluaran seputar
aktivitas Squid Proxy. berikut ini adalah daftar kode yang dihasilkan oleh file log
pada Squid Proxy.
kode keterangan
TCP_HIT Obyek yang diminta ada dalam cache dan berhasil
dihantarkan ke klien
TCP_MISS Obyek yang diminta tidak ada dalam cache UDP
TCP_REFRESH_HIT Obyek yang direquest telah kadaluarsa.
TCP_REF_FAIL_HIT Obyek yang diminta ada dalam cache, namun sudah
kadaluarsa. Query IMS tidak dapat dijalankan.
TCP_REFRESH_MISS Obyek yang diminta sudah kadaluarsa
TCP_CLIENT_REFRESH_MISS Klien mengakses obyek non-cache
TCP_IMS_HIT Klien melakukan request IMS untuk sebuah obyek
yang berada dalam cache baru
TCP_SWAPFAIL_MISS Obyek kemungkinan ada dalam cache, namun tidak
dapat diakses
TCP_NEGATIVE_HIT Request untuk obyek yang di cache negatif,
misalnya 404 Not Found
TCP_MEM_HIT Data valid dari obyek yang direquest ada dalam
cache memori, bukan dalam disk
TCP_DENIED Akses TCP diblokir
TCP_OFFLINE_HIT Obyek yang direquest diambil dari cache saat mode
offline
UDP_HIT Data valid dari obyek yang direquest ada dalam
cache
UDP_MISS Obyek yang diminta tidak ada dalam cache UDP
UDP_DENIED Akses UDP diblokir
UDP_INVALID Request invalid diterima
UDP_MISS_NOFETCH Saat startup -Y, atau saat failure, cache hit
menghasilkan kode ini
NONE Terjadi error
2.3.5. Squid Request Method
Squid mendukung beberapa metode request yang dijelaskan pada
dokumen RFC 2616 (Sumber: http://wiki.squid-cache.org/SquidFaq/SquidLogs):
method defined Cacheable Keterangan
GET HTTP/0.9 ya
Mengambil obyek dan melakukan
pencarian sederhana
HEAD HTTP/1.0 ya Pengambilan metadata
POST HTTP/1.0 - Mengirim data
PUT HTTP/1.1 tidak Mengunggah berkas
DELETE HTTP/1.1 tidak Menghapus item
TRACE HTTP/1.1 tidak Penelusuran rute request
OPTIONS HTTP/1.1 tidak
Opsi komunikasi request yang
tersedia
CONNECT HTTP/1.1r3 tidak Koneksi SSL melalui tunnel
ICP_QUERY Squid tidak Pertukaran ICP
PURGE Squid tidak Membuang obyek dari cache
PROPFIND rfc2518 - Mengambil properti sebuah obyek
MKCOL rfc2518 tidak Membuat koleksi baru
COPY rfc2518 tidak Membuat salinan berkas
MOVE rfc2518 tidak Memindahkan berkas
LOCK rfc2518 tidak
Mengunci obyek agar tidak dapat
dimodifikasi
UNLOCK rfc2518 tidak Membuka penguncian obyek
Tabel 2.3-2 Squid Request Method
2.3.6. Object Caching
Menurut Merriam Webster, cache (dibaca: /kash/) berasal dari bahasa
Perancis: cacher (/kaʃe/), yang artinya tersembunyi, atau sesuatu yang disimpan.
Dalam terminologi komputasi, cache dapat diartikan sebagai sebuah bagian dalam
memori komputer dimana informasi tersimpan sehingga komputer dapat
menemukannya dengan cepat. Object caching adalah salah satu fitur yang
ditawarkan oleh Proxy server. Fitur ini bekerja dengan cara menyimpan suatu
obyek dari internet baik pada protokol HTTP, FTP, atau yang lainnya ke dalam
sebuah sistem lokal. Dalam bukunya “Squid Proxy Server 3.1 Beginner’s Guide”
(2011), Saini menyebutkan ada dua media untuk melakukan caching, yaitu:
1. Caching menggunakan memori utama (RAM)
Melakukan caching pada memori utama memiliki keunggulan,
RAM yang jauh lebih tinggi dibandingkan dengan hard disk. Namun
kelemahan caching dengan memori utama adalah terkait
keterbatasan kapasitas data yang bisa ditampung. Seperti kita
ketahui, bahwa ukuran penyimpanan pada hard disk biasanya jauh
lebih besar dibandingkan dengan memori. Caching dengan memori
ini sebaiknya dilakukan untuk data dengan kemungkinan akses
sangat sering.
2. Caching menggunakan hard disk drive
Berbeda dengan memori utama, kapasitas hard disk jauh lebih
besar. Kita tidak mungkin melakukan caching sepenuhnya dengan
mengandalkan memori utama saja, mengingat kapasitasnya yang
terbatas dan harganya yang jauh lebih mahal. Kelemahan melakukan
caching pada hard disk adalah kecepatan akses yang lebih lambat
2.3.7. Hit Ratio
Hit ratio adalah salah satu parameter yang biasa digunakan dalam
menentukan kinerja Squid Proxy. Hit ratio adalah perbandingan antara jumlah
request yang dilakukan klien dibanding jumlah yang dapat dilayani oleh Squid.
Server
dihemat, karena klien mengambil layanan langsung dari Proxy pada jaringan lokal.
2.4. Linux
2.4.1. Pengertian Linux
Linux adalah sebuah sistem operasi yang memungkinkan pengguna
tersebut. Sistem operasi Linux menggunakan basis UNIX dalam pengembangannya.
Namun saat ini, Linux telah berkembang sangat jauh dibandingkan sistem UNIX
pada saat pertama kali. Linux dianggap merupakan sebuah teknologi yang paling
penting dalam perkembangan teknologi di abad 21. Perusahaan perusahaan besar
seperti Facebook dan Google menggunakan sistem operasi Linux untuk menunjang
bisnisnya. Sistem operasi perangkat genggam Android juga dibuat dengan
menggunakan basis sistem operasi Linux. Organisasi finansial dunia juga banyak
mengandalkan sistem operasi Linux seperti New York Stock Exchange, Chicago
Mercantile Exchange, dan Tokyo Stock Exchange.
2.4.2. Sejarah Linux
Sistem operasi open source linux mulai dikenal oleh dunia pada tahun
1991. Dimulai dari seorang mahasiswa bernama Linus Benedict Torvalds. Pada saat
itu, Linus membagi-bagikan program kernel buatannya melalui internet. Tidak
disangka, ternyata kode tersebut melahirkan sebuah sistem operasi yang cukup
tangguh sampai saat ini.
Linux terinspirasi dari sistem operasi Minix yang dikembangkan oleh
Andrew S. Tanenbaum. Minix adalah sebuah sistem operasi Unix-like yang
dijalankan pada suatu komputer. Pada awalnya, Linus sama sekali tidak menyangka
kalau kernel buatannya itu menjadi sistem operasi paling menjanjikan di dunia,
yang digunakan pada server, desktop, tablet, smartphone, instalasi militer, dan
masih banyak lagi. Linus memang bukan orang pertama yang membagikan kode
pengembang lain untuk membuka kode sumber mereka, seperti Java, Adobe,
Solaris, BSD, dan masih banyak lagi. Menurut Linus, apa yang dilakukannya adalah
sekedar untuk berbagi. Linus tidak terlalu fanatik dengan konsep free software.
Linus hanya mengedepankan sisi keterbukaan kode sumber (open-source) terlepas
dari apakah itu gratis atau berbayar.
2.4.3. Perbedaan Linux Dengan Sistem Operasi Lain
Selain Linux, terdapat banyak sistem operasi lain yang telah ada saat ini.
Sistem operasi yang paling banyak digunakan selain Linux adalah Windows dan
Mac OS. Kedua sistem operasi tersebut bersifat tertutup, yang berarti pengguna
tidak dapat secara bebas melaukan perubahan pada kode sumber untuk disesuaikan
dengan kebutuhannya masing masing.
Berbeda dengan Windows dan Mac OS, saat ini ada banyak sekali program
open source gratis yang tersedia dan dikembangkan untuk sistem operasi Linux. Hal
ini berdampak pada menurunnya biaya pengadaan infrastruktur bagi perusahaan
perusahaan yang menggantungkan dirinya pada sistem operasi Linux.
2.4.4. Distro Linux
Linux distro atau Linux distribution adalah sebutan untuk sistem operasi
atau aplikasi yang menggunakan kernelLinux. Setiap distro mempunyai keunikan
sendiri sendiri. Biasanya, suatu distro dibuat oleh sebuah komunitas tertentu. Linux
sebelumnya menurunkan distro yang baru lagi, seperti distro Debian yang
menurunkan Ubuntu.
Macam macam distro Linux yang cukup terkenal saat ini antara lain Linux
Mint, Ubuntu, Mageia, Fedora, OpenSuse, Debian, Arch Linux, CentOS, Red Hat,
Puppy, Slackware, dan masih banyak lagi
2.4.5. CentOS
Gambar 2.4-1 Logo CentOS
CentOS atau Community ENTerprise Operating System adalah salah satu
distro linux yang bermain pada segmen enterprise. CentOS ini merupakan turunan
dari RHEL (Red Hat Enterprise Linux). Pada awalnya CentOS dibuat agar menjadi
semirip mungkin dengan induknya, yaitu RHEL. Berbeda dengan RHEL yang
merupakan system operasi berbayar, CentOS dikembangkan oleh relawan dan
sepenuhnya gratis untuk digunakan dan didistribusikan. Biaya pengembangan dan
perawatan aset komunitas murni didapat dari donasi penggunanya dan beberapa
2.5. Jaringan Internet
Jaringan komputer adalah suatu kumpulan perangkat komputer yang
saling berkomunikasi. Sedangkan internet adalah dua atau lebih jaringan komputer
yang saling terhubung dengan jaringan yang lain. Jaringan internet merupakan hasil
kolaborasi antara banyak jaringan komputer yang saling terhubung di seluruh dunia.
Pada pertengahan era 1960, komputer pada sebuah lembaga merupakan
sebuah perangkat yang berdiri sendiri. Komputer pada suatu lembaga tidak dapat
berkomunikasi dengan komputer yang dimiliki oleh lembaga lain. Departemen riset
milik amerika (ARPA) bersama dengan departemen pertahanan (DoD) mulai
menggagas sebuah konsep untuk menghubungkan perangkat perangkat tersebut
sehingga lembaga lembaga yang ada dapat saling bertukar data melalui jaringan
tersebut, sehingga akan lebih menghemat biaya.
Pada tahun 1967, pada pertemuan Association for Computer Machinery
(ACM), ARPA mempresentasikan gagasannya tentang sebuah jaringan yang
menghubungkan suatu komputer dengan komputer yang lain. Gagasan ini diberi
nama ARPANET. Pada tahun 1969, ARPANET benar benar terwujud. Pada awalnya,
ada empat lembaga yang terhubung dengan jaringan ini yaitu: University of
California at Los Angeles (UCLA), University of Carolina at Santa Barbara
(UCSB), Stanford Research Institute (SRI), dan University of Utah. Untuk bisa
saling terhubung pada jaringan ARPANET, komputer host menggunakan program
bernama Network Control Protocol (NCP) sebagai pengatur komunikasi antar
Pada tahun 1972, beberapa peneliti mulai menggagas tentang sebuah
protokol yang nantinya dapat digunakan untuk mengatur end to end delivery untuk
paket data. Konsep ini merupakan konsep awal dari Transmission Control Protocol
(TCP) yang memaparkan tentang enkapsulasi, datagram, dan gateway. Tidak lama
kemudian, TCP dipisah menjadi dua bagian: Transmission Control Protocol (TCP)
dan Internetworking Protocol (IP). IP bertugas untuk mengatur datagram routing,
sedangkan TCP mengatur segmentasi, error detection, dan lain lain.
2.6. Jaringan LAN
Jaringan LAN adalah jaringan lokal yang menghubungkan perangkat pada
sebuah kantor, gedung, atau kampus. Jaringan ini dibatasi hanya pada satu subnet
dan terdiri dari minimal dua buah komputer. Jaringan LAN dirancang untuk saling
berbagi antara komputer. Jaringan LAN yang sederhana dapat melibatkan hanya dua
perangkat komputer saja.
Jaringan LAN hanya menggunakan satu macam media transmisi saja.
Bentuk topologi jaringan LAN secara dasar menurut Forouzan (2004), digolongkan
Gambar 2.6-1 Topologi bus
Gambar 2.6-3Topologi Star
2.7. WWW dan HTTP
2.7.1. WWW
Menurut forouzan (2002), WWW adalah sebuah gudang informasi yang
saling terhubung di seluruh dunia. Proyek WWW pertamakali dimulai oleh CERN,
yaitu sebuah lembaga yang meneliti fisika partikel yang berlokasi di Eropa. Pada
awalnya, WWW merupakan sebuah sistem yang dirancang untuk mendistribusikan
materi materi ilmiah untuk kepentingan penelitian di seluruh dunia.
Server A Server B
request
request
Halaman Web A
Halaman Web B
Setiap server memiliki satu atau lebih dokumen, yang sering disebut juga
halaman web. Tiap halaman web dapat berisi tautan ke halaman lain. Halaman web
bisa diakses melalui web browser pada klien. Untuk dapat mengaksesnya, klien
perlu tahu beberapa informasi yang dapat menuntunnya ke server A. Klien
mengirimkan request yang ditujukan kepada server A melalui aplikasi browser.
Request ini berisi informasi file yang diminta dan alamat yang dituju, atau disebut
juga URL. Setelah menemukan file yang diminta, server A mengirimkan reply ke
klien yang berisi halaman web A yang tadi diminta. Pada halaman web A, klien
menemukan referensi dengan alamat URLserver B. Maka, jika klien menginginkan
halaman web B, klien melakukan proses yang sama seperti sebelumnya, tapi
langsung ditujukan kepada server B.
2.7.2. HTTP
HTTP atau Hypertext Transfer Protocol adalah sebuah protokol yang
digunakan untuk mengakses data pada WWW. Walaupun HTTP menggunakan
service TCP, namun HTTP ini sendiri merupakan stateless protocol, yaitu protokol
yang memperlakukan setiap request secara independen. Cara kerjanya adalah klien
server klien
request
response
Gambar 2.7-2 Proses Transaksi HTTP
Isi dari request yang dilakukan klien adalah sebuah pesan yang berisi
method yang diminta. Tipe request dikategorikan dalam tabel dibawah ini:
method action
GET Meminta sebuah dokumen pada suatu server
HEAD Meminta suatu dokumen, tapi bukan dokumen secara keseluruhan
POST Mengirimkan beberapa informasi dari klien ke server
PUT Mengirimkan dokumen dari server ke klien
TRACE Mengulang informasi yang didapat
CONNECT Reserved
OPTION menanyakan opsi yang tersedia
Tabel 2.7-1 HTTP Request Method
Sedangkan balasan atau reply dari server berisi status kode yang terdiri
awalan 2xx adalah kode sukses, kode 3xx adalah untuk redirect, kode 4xx adalah
kode kesalahan klien, kode 5xx adalah kode server error. Selengkapnya dapat
dilihat pada tabel berikut:
Status Deskripsi
Informational
100 Continue
101 Switching Protocols
102 Processing
Successful Transaction
200 OK
201 Created
202 Accepted
203 Non-Authoritative Information
204 No Content
205 Reset Content
207 Multi Status
Redirection
300 Multiple Choices
301 Moved Permanently
302 Moved Temporarily
303 See Other
304 Not Modified
305 Use Proxy
307 Temporary Redirect
Client Error
400 Bad Request
401 Unauthorized
402 Payment Required
403 Forbidden
404 Not Found
405 Method Not Allowed
407 Proxy Authentication Required
408 Request Timeout
409 Conflict
410 Gone
411 Length Required
412 Precondition Failed
413 Request Entity Too Large
414 Request URI Too Large
415 Unsupported Media Type
416 Request Range Not Satisfiable
417 Expectation Failed
422 Unprocessable Entity
424 Locked
424 Failed Dependency
433 Unprocessable Entity
Server Errors
501 Not Implemented
502 Bad Gateway
503 Service Unavailable
504 Gateway Timeout
505 HTTP Version Not Supported
507 Insufficient Storage
Tabel 2.7-2 HTTP Status Code
2.8. Web Server
2.8.1. Gambaran Umum Web Server
Menurut Gourley (2002), web server adalah sebuah program yang
berfungsi untuk memproses HTTP request dari klien dari aplikasi web browser,
kemudian memberikan response yang berupa dokumen berbentuk HTML yang
nantinya akan diproses oleh web browser milik klien sehingga membentuk sebuah
tampilan. Web server sendiri bisa berarti sebuah perangkat lunak maupun sebuah
komputer yang dikhususkan untuk melayani dokumen web. Secara umum, sebuah
web server dapat dijalankan pada sebuah komputer standar yang terhubung dengan
sebuah jaringan. Program untuk web server saat ini tersedia hampir untuk semua
sistem komputer dan sistem operasi, mulai dari program open-source gratis, sampai
2.8.2. Cara Kerja Web Server
Secara sederhana, prinsip kerja dari web server adalah menerima request,
kemudian membalas dengan response kepada klien yang meminta. Sedangkan
tahapan tentang apa yang dikerjakan di dalam web server dapat dilihat pada gambar
berikut:
Gambar 2.8-1 Gambaran Umum WebServer
Penjelasan:
1. Memulai koneksi: Tahap pertama, klien mengirimkan HTTP request kepada web server yang dituju. Pada tahap ini, server dapat menutup koneksi jika klien membatalkan permintaan.
3. Pemrosesan request: Program web server menerjemahkan permintaan yang diterima untuk menentukan dokumen yang diminta oleh klien.
4. Mengakses sumberdaya: Mengambil dokumen di media penyimpanan
sesuai dengan apa yang diminta oleh klien.
5. Membentuk HTTP response: Membuat pesan HTTP response sesuai dengan permintaan sebelum diberikan kepada klien.
6. Mengirimkan response: Server mengirimkan dokumen yang telah diproses kepada klien. Klien akan menerima dokumen ini sebagai
halaman HTML.
7. Mencatat transaksi: Melakukan pencatatan transaksi yang telah
2.9. Dokumen Web
Secara garis besar, dokumen pada WWW dapat digolongkan menjadi tiga
yaitu: statis, dinamis, dan aktif.
2.9.1. Dokumen Web Statis
Dokumen web statis adalah dokumen yang bersifat tetap, yang tersimpan
dalam sebuah server. Pihak klien hanya bisa mendapat salinan dari dokumen
tersebut sebagaimana isinya ditentukan pada saat dokumen tersebut dibuat. Pihak
klien tidak dapat melakukan perubahan pada dokumen tersebut. Biasanya dokumen
web statis dibangun dengan hanya menggunakan HTML atau XML.
Klien Server
request
Dokumen Statis
2.9.2. Dokumen Web Dinamis
Dokumen dinamis dibuat ketika klien melakukan permintaan sebuah
dokumen ke server. Ketika ada permintaan, web server menjalankan program untuk
membentuk sebuah dokumen. Jika pada dokumen statis klien hanya mendapat
salinan secara utuh sebagaimana dokumen tersebut sudah ditentukan dari awal,
pada web dinamis, server menjalankan program untuk membuat sebuah dokumen
terlebih dahulu sebelum diberikan ke klien. Teknologi yang cukup banyak
digunakan dalam pemrograman web dinamis antara lain JSP, PHP, dan ASP.
Klien Server
request
Dokumen Dinamis
Server menjalankan program
2.9.3. Dokumen Web Aktif
Hampir sama dengan dokumen web dinamis, jika pada web dinamis
dokumen web dieksekusi oleh server, pada web aktif program tersebut dieksekusi
oleh klien. Ketika server mendapatkan permintaan dari klien, server mengirimkan
sebuah program yang akan dijalankan oleh klien. Contoh penggunaan web aktif ini
adalah pada situs yang menyediakan konten berupa flash.
Klien Server
request
Kode program Klien
meneksekusi program
2.10. Persamaan Regresi
Persamaan regresi adalah persamaan matematika yang dapat digunakan
untuk memprediksi nilai nilai suatu variabel terhadap variabel lain. Istilah regresi
awalnya berasal dari penelitian yang dilakukan oleh Sir Francis Galton yang pada
waktu itu melakukan penelitian tentang tinggi badan anak laki laki dibanding
ayahnya, yang dari tahun ke tahun mengalami kemunduran (regressed). Saat ini,
istilah regresi digunakan secara luas untuk semua jenis peramalan dan analisis data.
2.10.1.Regresi Linier
Linier dapat juga diartikan sebagai “garis lurus”. Hubungan regresi linier
membentuk pola yang dapat dijelaskan dengan menarik garis lurus. Salah satu cara
untuk mengetahui apakah hubungan dari suatu variabel terhadap variabel lain
membentuk garis linier adalah dapat dilakukan dengan cara visual, yaitu jika dari
diagram pencarnya dapat digambarkan sebuah garis lurus.
Gambar 2.10-1 Hubungan Linier
Dari gambar di atas dapat kita lihat bahwa sebaran data tersebut dapat
digambarkan dengan sebuah garis lurus. Artinya, pada persamaan linier, jika nilai
variabel X bertambah, nilai variabel Y juga mengalami penambahan searah secara
konstan. Garis lurus tersebut disebut juga garis regresi (regression line). Dalam
regresi linier, terdapat dua variabel yang digunakan, yaitu variabel yang
mempengaruhi (independent variable) atau regressor, dan variabel yang
terpengaruh (dependent variable) atau response. Hubungan linier sederhana antara
responseY dan regressorx dapat dirumuskan:
= � + �
Dimana � disebut juga intercept atau titik dimana garis regresi
menyentuh sumbu x. sedangkan � atau slope, adalah besarnya kemiringan pada garis regresi tersebut.
Dalam beberapa kasus, bisa saja terdapat lebih dari satu variabel regressor,
ini berarti ada dua atau lebih variabel yang dapat menjelaskan variabel Y atau dependen. Misalnya, variabel Y adalah harga rumah. Sedangkan untuk menjelaskan
Y (harga rumah) misalnya, terdapat dua faktor yang menentukan, yaitu usia dari rumah tersebut (x1) dan harga jual tanah (x2). Dalam kasus ini, persamaan regresinya dapat ditulis sebagai berikut:
2.10.2.Regresi Non Linier
Analisis regresi linier didasarkan pada anggapan bahwa hubungan rata rata
antara dua atau lebih variabel dapat dilukiskan dengan menarik garis lurus. Namun
seringkali, hubungan sebuah data dapat diterangkan dengan lebih baik
menggunakan garis lengkung (curve). Pada regresi nonlinear, garis regresi yang
tergambar dapat tiba tiba berubah arah. Dalam statistika, dikenal lima jenis regresi
nonlinear, yaitu: regresi pertumbuhan eksponensial, penurunan eksponensial,
gaussian model, pertumbuhan logistik, dan model logaritmik. Persamaan yang
digunakan pada model model tersebut antara lain:
Pertumbuhan eksponensial: =
Penurunan eksponensial: = −
Gaussian: = − − /
Pertumbuhan logistik: =
+ −
Gambar 2.10-2 Model Regresi Nonlinear
Untuk mendapatkan linieritas dari hubungan non linier, dapat dilakukan
transformasi pada variabel dependen atau variabel independen atau keduanya.
Untuk transormasi ke bentuk eksponensial dan logaritma, persamaannya adalah
sebagai berikut:
BAB III
RANCANGAN PENELITIAN
3.1. Analisis Kebutuhan Sistem
Sebelum melakukan pengujian, dilakukan persiapan berupa pengaturan
perangkat keras dan perangkat lunak. Pengaturan perangkat keras yang dilakukan
antara lain mempersiapkan komputer untuk server dan klien serta perencanaan
topologi jaringan yang akan digunakan pada pengujian. Sedangkan persiapan dari
segi perangkat lunak meliputi instalasi dan konfigurasi server serta beberapa
pengaturan program pada komputer klien. Kebutuhan perangkat keras dan
perangkat lunak dapat dilihat pada tabel di bawah ini:
3.1.1. Kebutuhan Perangkat Keras
Server Client
Mainboard Intel Serverboard SE7221BA Dell OT10XW
HDD
Western Digital WD7500AYYS
S-ATA Raid Edition (7200RPM) Toshiba DT01ACA050 S-ATA
(7200RPM) Seagate ST3808110AS
S-ATA (7200RPM)
CPU Intel pentium 4 @3.00GHz Intel G2030 @3.00GHz
Network Card
Intel 82557/8/9/0/1 Ethernet
pro 100 Realtek RTL8186/8111 Gigabit
Ethernet Controller Marvell 88E8050 Gigabit
Ethernet Controller
Main Memory 4x1GB DDR533 dual channel 1x2GB DDR12800 single channel
3.1.2. Kebutuhan Perangkat Lunak
Server Client
Sistem Operasi Linux CentOS 6.5 32bit Windows 7 pro 64bit
Browser - Mozilla Firefox 31.0
Proxy Squid Proxy 3.1 -
Tabel 3.1-2 Spesifikasi perangkat lunak
3.2. Skenario Pengujian
3.2.1. Topologi Jaringan
Topologi jaringan yang digunakan pada penelitian ini adalah topologi star
dengan Squid diposisikan sebagai gateway. Sepuluh unit komputer klien terhubung
dengan Proxy server melalui sebuah ethernet switch. Pada komputer Proxy server,
terdapat dua buah ethernet card. Satu untuk koneksi dengan klien melalui switch,
kemudian yang lain digunakan untuk terhubung dengan ISP. Jaringan antara klien
dengan Proxy server terhubung dengan menggunakan blok IP 10.10.10.0/28.
Sedangkan Proxy server ke ISP, mendapatkan IP otomatis yang diberikan oleh ISP
Gambar 3.2-1 Topologi Jaringan Yang Digunakan
3.2.2. Mekanisme Pengumpulan Data
Banyaknya pengujian dilakukan didasarkan pada target hit ratio yang
ingin dicapai. Pada penelitian ini diberikan rangetargethit pada 10%, 20%, 30%,
40%, dan 50%. Website yang digunakan untuk pengujian dibagi menjadi tiga
golongan, yaitu web statis dengan konten lebih banyak berupa teks, web dinamis
dengan layanan utama berupa galeri gambar, dan web jenis rich content yang
mengandung banyak konten interaktif (web aktif).
Pengujian dilakukan sebanyak tiga puluh kali per target hit yang ingin
dicapai untuk masing masing kategori website. Browser pada komputer klien diatur
untuk tidak melakukan caching pada local computer. Browser yang digunakan pada
Proxy pada alamat 10.10.10.1:80. Total pengujian adalah empat ratus lima puluh
kali, dengan perhitungan:
5 range target hit × 3 kategori web × 30 pengujian
Pada setiap pengujian, klien diatur untuk mengakses web yang telah
ditentukan dalam tabel 3.2-1. Setelah selesai melakukan satu pengujian, dilakukan
penghapusan cache pada direktori /Squidcache, log pada /var/log/Squid/, serta
mengosongkan catatan aktivitasdatadi ifconfig dan cache memory dengan cara
me-restart ulang komputer server. Kemudian menghapus cache pada web browser di
komputer klien. Setelah itu baru dilanjutkan ke pengujian selanjutnya. Urutan
pengujiannya adalah sebagai berikut:
1 Memastikan bahwa sebelum pengujian dimulai, file log dan cache
sudah dihapus. Kolom TX dan RX pada perintah ifconfig
menunjukkan belum ada aktivitas browsing. Serta cache pada web
browser di komputer klien sudah dikosongkan.
2 Melakukan pengujian dengan cara melakukan browsing ke alamat
website yang sudah ditentukan di masing masing komputer klien.
3 Apabila target hit telah tercapai, komputer server secara otomatis
akan melakukan pencatatan data yang diperoleh selama pengujian.
4 Melakukan pengujian selanjutnya sampai memenuhi jumlah
5 Apabila sudah selesai melakukan pengujian, dilakukan analisa
keseluruhan terhadap hasil pengukuran yang telah didapat.
3.2.3. Diagram Alur Mekanisme Pengumpulan Data
start
Menghapus squid cache, log, catatan aktivitas data pada ethernet, dan cache pada browser
client
pengujian
pencatatan data
analisa keseluruhan hasil pengujian telah memenuhi jumlah pengujian yang ditentukan
end tidak
ya
3.2.4. Daftar Website
Dalam pengujian ini, website yang dikunjungi oleh klien ditentukan dalam
tabel berikut:
no Statis Dinamis Aktif
1 wiki.Squid-cache.org 9gag.com kompas.com
2 www.ulo.ucl.ac.uk www.fotografer.net/galeri www.kapanlagi.com
3 xhtml.com fotokita.net/foto detik.com
4 www.washington.edu www.arbainrambey.com tabloidpulsa.co.id
5 www.w3.org/TR/xhtml2 www.latvia.eu okezone.com
6 wiki.centos.org keprifoto.com/gallery www.liputan6.com
7 www.w3schools.com www.photographersgallery.com www.tribunnews.com
8 www.xml.com www.worldphotoday.org/gallery www.lensaindonesia.com
Tabel 3.2-1 Daftar Web Yang Digunakan
3.3. Parameter Pengujian
Pada penelitian ini dilakukan beberapa pengujian dengan skenario berbeda
yang bertujuan untuk mendapatkan perbandingan dan analisa hasil pengukuran.
Parameter yang dibandingkan adalah:
1. Hit ratio: nilai hit ratio diperoleh melalui perbandingan jumlah HIT
dan MISS pada file access.log. Rumus untuk mengetahui jumlah hit
ratio adalah:
∑ �
Proses penghitungan hit ratio dilakukan oleh script awk yang dibuat
khusus untuk menghitung perolehan hit secara realtime.
2. Eth-ISP: eth-ISP yaitu antarmuka pada komputer server yang terhubung dengan ISP. Diperoleh dari perintah ifconfig pada linux
yang hanya diambil baris RX bytes pada eth1.
3. Eth-klien: eth-klien adalah antarmuka yang terhubung dengan klien melaui switch. Diperoleh dari perintah ifconfig pada linux yang
hanya diambil baris TX bytes pada eth0.
4. Disk: Parameter Disk diambil melalui perintah df –hdan diambil nilai untuk /dev/sdb1 pada kolom Used, yang mana dalam pengujian ini
adalah partisi untuk menyimpan file cache
5. CPU: CPU adalah nilai yang didapat melalui perintah Squidclient -p 80 mgr:info | gre-p \"CPU Usage\"dan hanya diambil nilai pada
baris CPU Usage.
6. Memory: Diambil dengan perintah fgrep Vm /proc/$(pidof
Squid)/statusyang hanya diambil nilainya pada baris VmSize, yaitu
jumlah total memori yang sedang digunakan oleh Squid.
7. Cached request: Jumlah HTTP request yang dapat di cache oleh Squid. Diperoleh dari file access.log, hanya dihitung pada baris log
yang mengandung kata HIT.
8. Total request: Jumlah total HTTP request yang didapat pada saat pengujian berlangsung. Diperoleh dari file access.log. karena
Squid baik yang ter cache maupun yang tidak, maka dengan kata lain
total request adalah jumlah semua baris yang terdapat pada file
access.log.
Seluruh parameter yang dihitung pada penelitian ini disaring agar
parameter yang dicatat adalah hanya yang dipakai oleh program Squid saja, tepat
pada saat target hit tercapai.
3.4. Tabel Pengujian
Berikut ini adalah tabel yang akan digunakan untuk pengujian:
Tabel Pengambilan Data
Kategori Web: [Statis, Dinamis, Aktif]
Target [10%, 20%, 30%, 40%, 50%]
Tabel 3.4-1 Tabel Pengambilan Data
Tabel 3.4-1 (tabel pengambilan data) adalah tabel yang digunakan untuk
mencatat perolehan data pada saat dilakukan pengujian sebanyak tiga puluh kali per
target hit per kategori, sehingga nantinya akan didapat sebanyak lima belas tabel.
Parameter yang dicatat adalah nilai dari tiap parameter yang dihasilkan tepat pada