l..atar Be1:lltang Jaringan komputer pada suatu perusahaan atau sebu~lll :~niversitas merupalkan el{:inen penyusun ir~tenletyang discbut sebagai end r~envork(Sun & Cleveland, 2000). lntetnet merupakan sebuali jaringaii besar yang terdi~iatns b:ln!yak subjaringati (end rietivork). Lalu-lintas Internet pada saat ini didominasi c~leliprotokol Hypertext Trnrrsfer PI otocol (KmP), yakni mencapai 75 hingga SO% dari t-afik Internet (Barish & Obraczka, 2000). I-ITTP ~ner.~p;lkarlsebuali protokol yang digunakan ole11 s e r w dan klien web, sebutan singkat bagi aplikasi CI'orld Wide Web (Mall, 1997). ~ p l i k a s iweb banyak diakses secam bersama oleh klien dari sebuall end netwod atau jaringan kornputer lokal, Local Ar?a N e t ~ ~ o r k(LAN) ;Stalliilgs, 2000). Pada umumnya, akses lrite~net dari jaringan koniputer lokal dibhntu oleh seboah zerver- yang diseoutproxy (Mahanti et al, 2000). Scbuali seriler pros)) merupakan sistem yang menerirna perminkan temu keinbali suntu dokuinen (docrinrent retrieval reqlrests) d a ~ isejtmlah klien, rneneruskan peimintaan tersebul Ge se1.l-vr? di Internet (ori;irr .set-ve19 yang dimaksud-apabila clokuma1 yang diminta tidak terdapat pada cac/renya-dan tnengirirnkan balasannya kepada kliell (Ivlalianti, 2000). Sewer prox), memberikan tiga keuntungan dalam mengakses web, yait!~: rcduksi konsumsi bondwidili eltsternal, reduksi betan server asal, reduksi waktu tbnggu bagi pengguna (Davison, . " 1999). Kineja sebuah server proxy biasznya diililai menggunakan ukuran efisiensi hit rale, $le hit rate, dan respolrse tilrie (Arlitl & Dilley, 1999). Pada umumnya, penelitian-pe;~eliti+n perihal srnjer proxy be1,kaitan dengail perbandingan unjuk kej a beberapa algoritma pertukaran objek (object replccement policy) untuk mencari algo~itlnayang rnembe~ikankinerja terbaik kepadallroxy. Dari sekian masalah serverprcxy, masalah yang kerap terjadi adalah ketika sebr~ahjaringan konlpr~ter Iokal hendak diperluas atau ditambah jumlah penggunany:~. Mas:llali yang tiinbul adalah perihal peoentuan jumlah penambahan klien maksiintml . yang tilasill layak untuk menampilkan kineja yang efisic~idengan ketersedian bnrrdwid~lleksternal yaiig lkan dipasang. Penelitian ini ingin lnengetaliui hubungan pen31nbahan . jumlali pengguna dail ~~tilisaasi pemaltaian barid~~i~ltlr dan juga tcrhadap
ukuran Ikinerjaproxy lai~inya ' Iiipotesis yang diaj11'La11adilatl b;lhw:~ukuran Icinerja server p ~ o x ytidal: Ilanya berganlong pada algo~ittiiaol~jectrei~lnc~.n~er~lpolic)~ (Arlitt b% Dilley, 1999) yallg diterapkall, namun jugn paila jurnlali pellgguna (riser) yang mengacu padanya dan lebar bandn~i~ith akses lie Internet. llipotesis tersebut didasarkan pada ~iiotlrl ~iiatelnatis yang tlikeinukakan Mnrsl~all k Roadktiight, 1998, yrng menulis bahwa jumlah hi/ herbanding IUIIIS terliadap jumlah user. Hisakazu, 1999, .iuga menyinipulk:m baliwa kinc~ja .seri.er proxy sangat berganlung paOa ketersedian lebar bariclwidth lte Internet. Pengujian hipotesis dilakukan dengan simulasi yang dibuat l~erdasarkandata u~orkloadsistem yang sesurgguhnya. Siniulasi yang digunakan adalah simulasi kejadian diskret (di.~creieevent .simulatior~). Tujuan Penelitian ini be~tujuiln i~ntukrnengetaliui pengaruit jumlah pengguna (~rser/slotion) terliadap kijieja seriiw prox), serTa kebutuhan lebal. dali utrlisasi bandwidth eksternal. Selain itu, nielalui pe~ielitian ini akan dibandingkan pula tiga algoritrlia pertukaran objek pada server pr-oxy untuk mengebhui keunggula~l masing-r.iasing algoriima.
TINJAUAN P U S T A M Jaringan Komputer Sekurnpnla~lkon~puterdalani jumlali banyak yatig te~pisnh-pisahakan tetapi saliii~berhubuiigan dalain rrelaksanaka~i tugasnpa disebut sebagai jarinran hornputer. .'a~ingan komputer lokal atau Locnl Aren Network, sering diseb~rtLAN, merupakan jaringar1 milik pribadi di dala~nsebuah gedung atau lk:impus yang berukuran sampai beberapa kilometer. LAN seriilg digunakan untuk mcnghubungkw ltonipoterkomputer pribadi d a i ~ wor.Icslntion dalam kaotor penrsahaan urituk peniakaia~iresorrrre bersarna dan saling be~tokarinformasi (l'anenbauin, 1996).
I~:tcrrtet Terdapat banyek jilringnn koniputer di dlin~aini dan serin~kali dengall " " .~,e~.angl:atkeras dan t~eranpkat lunak .vana bcrbeda-beda. r i. d seboah -. gedung atau pada suatu universivas disehul erid n e f ~ ~ o ~Kumpol:u~ k. jaringan komputer yang tenn-
-
-
terkoneksi ini disebut in~er~re/lvorl(titau intmlet (Tanenbaum, 1976). ICudangkala digunakat~ istilnh hrrmlel tmtuk nlengacu pada glrblic htemel, yakni sebuah internet sedunia (Comer, 1998).
Trflrrsrrrissiorr CorrfrolProtocol {TCP) Sebuah aplikasi yang digunakan untuk bertukar informasi membut~lhkansebuah aturan agar komunikasi antajari7.gar dapat terjalqn baik. TCP (Transmission Control P,otoco,) merupakan subrutin atau prosedm yang me!?jamin data yang dikomunikasikan anrajaringan dapat s l i n g diterima dengan benar. TCP n ~ e r u p k a t ~protokol transportasi yang digunika~~ole11 hampir semua aplikasi internet, senerti File Parl.fir Proloco1 (I:TP), lfyperlext Trml.vfer Pr~olucol (I-I'ITP), Sirrrple Mail Trcinsj'er Protocol (SMTP), atau Telnet. TCI' berorientasi pada pembentukan koneksi, yakni dua buah komputer h a n ~ smembentuk sebual~koneksi sebelum data dapat saling dikomunikasikan f~Mosr,1997). IConeltsi TCP Koneksi TCP selalu dibuka dengz~n prosedur ynng dikenal dengan istilah fhree-way handshoke. Prosedur ini bejalan ketilta salah sat~lpiliak TCI' nie~~ginisialisasik;~~i koneksi dan 1r:endapat respon d a ~ TCP i yang lain. Selain ito, rl~,re-wri~~ liundsl~nke dapat pula terjadi ketika dua TCP secara serentak menginisialisasikan koneksi (Postel, 1981). Prosedur dasar tlrree-vay ha~ldshake yang paling sederhana den mewakili keseluruhan kasus pembukaan koneksi ditunjukkan p.lda Gambar I . berikut ini: TCP A I . CLOSED
2.SYN-SENT 3.ESTAB r - -
-
TCP U LISTEN < S E Q ~ ~ O O > < C T L * S Y N I- - > SYN-REC
cSEQ=300>ciiCK=101>1CTL=SYNNACK~
<.ESTAR - - >
-
SYN-REC
~SEQ::~O~>~ACK=IO~~~C~'II=ACKK
-- .
ESTAB.
5.EBCAB - - >
<SEQ~lOl>c~CK=IO1>cCTI.~.ACK>
ESTAO
(recei~t~ing side). Jadi, CLOSE selalu diinigg;~~ dalam kondisi .rirnplex. Dengan demikian, pengguna yang meng-CLOSE dapat tctap menerima byte sampa: ia dib-ritahukan bahwa sisi seherang juga telah nienutup Iconeksinya (Postel, 1981). Terdapat tiga jenis kasos penutupsn koneltsi dasar, yaitu: 1. Pengguna menginisi ~lisasikan penutupitn ko~~eksidengan memberitahukan TCP untuk menutup konelai. 2. TCP seberang pelnote) ~nenginisialisasi dengan mengi~imsinyal kontrol FIN. 3. Kedua sisi lnelakukat~ penutupan bar~eksi secara serentak atau simulatan. 1'ro~;espenutupan koneksi secar;i nonnal atau tidak padanio4us simulatan dilukisk;m pada Gan~bar2. 'PCP A 1. ESTABLISHED 2. l~losei FIN-WAIT-, --r
<SI?@~~O~~.:RUK-~~~~~C~.LLI'~~~,ACK:~
..... CLOSE-ll&l?(
4 . (Close1
TIMF.IIAIT
c--
~SEQrIOO~
5.TIME-WAIT
LA5T-AC:K
<SEQ=IO~~~ACK~IO~>E~LLACK~~ . CLC3SEO
. ,.
6 . 12 EtSLl
CLOSED
Ga~nbar2. U:-11t-un~tan proses penl~topankaneksi.
TCP Cotlgmtion Corrtrol Algoritlrw TCP tnenyajikan keterandalan dalam mentransrnisikat~ data. Aplikasi yang menggunakan TCP mengetahui dengan pasti bahwa data yang diki~im dapat dite~imadet~ganbaik. Ketika data ditelima, TCP mengirimkan sebuah c~cknowledgementsebagai balasan kepada pengirimnya. Untuk dapat menyediakan jasa transmisi yang handal, TCP tnenernpkan empat algoritma yang dibuat oleh Van Jacobson pada tahun 1985, yaito: TCP Slow ,Start, TCP Cortgestiorz A~~oiflonce,TCP Fast Refrai~s~~rit, dan TCP Past Rccuver:~.
.
TCP SIoiv Start Ganbar 1 . i'hree-way Iirnrcls'rake dasar
- P e n u t u p a u (Closirrg)Idi tidak jelas sisi atau pihak m a w yang nkan menjadi sisi penerima
Algoritma slow start rnelibatkal~ sebuah variabel pada sisi pengirim 'sendel:), yalmi: congestion window, cwnd. Pada saat sebuah koneksi bhru terbentuk, cwnd diken ~rililiawal satna dengan ul;uran sebual~sqnlent, yakni ukuran d;lla makslnium yang dapat dite~inla olch receive?: biasanya rnenggllnakan standar 536 atau 512-pads tulisan ini, segmeNt disebut sebagai Afcrrimtmr
Srgnient Size, MSS, bemilai 1460). Setiap sebuah ACK dite~ima01th sotder, cwnd dina;kkan nilainya senilai sat11 seginerlt. Kemudiao, .;enrler dayat m~entransrnisikan data llingga sebesar nilai rnirlllln antara cwnd atau awnd. Congesiion >vittOow, cwnd. adalali me':anisme kontrol d;~risender, sedangkan awnd, adr~ei?isen'windoiu, nierupakan mekanisnie kontrol yang dib~rikan dari sisi receiver, yakni jurnlah btljer kosong yang niasih dimilild receiver. Pengirim mulai dengan nlentransmisikan sebuah segrilent dan menantikan ACK. Ketika ACK untuk segrtzent itu diterima, cwnd menjadi be~liilai dua segirierr:, den kemudian dua segntent sekal,gus dapat dilcirim saat ini. Pada saat kedu;~segmer:t itu telah di-achtowledge, cwnd dinaikkan- ni!ainyh ~nelijadi empat segmerrt. Hal ini mellur~ukkan pertumbuhan ek~ponensial,kendati tidak wnggullsunggull cksponcnsial, karena biasnnya receiver ACK, yakni hanya menunda penpiriman mengirimkan ACTS setiap telah dite~imanya dua buali segment henmton. Fase .slow start pada Gambar 3. beradc pada ~ormd-tri11tinle no1 liingga ernpat &an ronnd-trip titire litna Ihingg.1 delapan.
R 0 d . V b liru
I
4
.
Garnbar 3. Ilushaai TCP Slow Start dan Co,tgeslioi~ Avo'd once. TCI' Co~rgestiorr.4voidn1rce Corlgestioit a~ioida~tredan sloiv start ulemerlukan dua buali variabe: utituk setiap koneksi~iya, yakni selain cwnd j'lga s n t r e s h , yakni batasan diterapkannya algoiitma sluw start dan congestioit avoidartce d a l ~ m mengontrol transmisi data. Berikut ini deskripsi tentang jalannya kedua algorihna tersebut: I . Nilai cwnd di-set sat!] seg?neilt dar~ s s t r e s h diberi nilai 65535 bytes. Nilai s s t r a s h biasanya dinr.abil d?ri nilai awnc' receiver. ' 2. TCP mengirmkan data maksimum sebesar nilai minimum dari c m d i1:a11awnd.
3. Ketika teqadi co~~ge.stionyang ditar~dai dengan tii~teorrlatau ditelimanya driplicote ACK--pad3 Ganibar 3. terj;~dipads rorir~dtrip tinle entpat--1iilai sstlresh menjadi setengah dati rlilai sen~ula(atau setengah dari nilai minimum antara cwnd dan awnd receiver, namun minimal due segir~e~rt). Dan apabila tir~leo~rt terjadi, cwnd kembali bemilai satu seg~~~errt, dau kembi~like fase slow strrrt. 4. Ketika kemucian data baru yang dik~rimdiackno~~,ledgcoleh rereil~er, riilai c w d naik, namun kenaikannya bergantung pade fase TCP, .slow start ataukan rongestioii a~oidartce. Jika cwnd bemilai lebih kecil atau sarn;l dengan nilai s s t r e s h , TCP berada pads fase slow .start; selainnya TCP berada pada fase congestion ai~oirbnce. Pada fase cortgestion ai~oi
f i r s t hetrnrrsirtit Kare.na TCP tidak dapt n~engelahuipcnyebab terjadinya duplikasi ACK, karena s e g r c ~ t lost ataukah karena segrne~tt tak urut, maka 'TCI' menimggu beberapa duplikasi ,\CR berikutnya. TC:P mengasumsikan hzmya aka11 ada satu atat1 d11a duplikasi ACI< apabila yang te~jadi adalab pengurutan segnlent. Jika duplikasi ACK mencapai tiga atau lebili secara berurutan, Ihal ini tnengindikasikan bahwa yang tejadi pastili~ll segnrertt lost. Jika demikiar: mata 'TCP nkan segera mentuansmisi ulang seg~izent yang hila~ig tanpa menmlggu jadwal naktu hwsrnisi olang yang seha~~~snya. F a s t Recovery Algoritma fast retrans~rtil (Ian ,fust r c c o ~ : e ~ ~ diimplementasikan secara bersarlla sebagai bcrikut: I . Ketik;~ duplihasi ACK (beruntun) y ~ n g ketiga diterima, nilai s a t r e s h rnenjadi sepamh nilai cvmd, sstresh=:%c~llld, tetapi nilai s s t r e s h harus tidak kurang dari dua MSS, s s t r e s h 2 2 MSS. t t hilang, 2. Tr~nsmisiLanketiga s e g ~ ~ l oyang beri nilai cwnd=sstresh-k(3xMSS). 1-It11 ini bcrarti menggantikan atau menatnbnhkan rlilai conge.~tioit ivirtrlo~v, cwnd. sejunilah seg~nerrt yang telah hilang m2ninggalkan jaringan (nenoork).
Untuk setiap sebuah duplikilsi ACK dengan dokun~enlain dikenal dengan rcplncenrerzr berikutnja, nilai cwnd=cwld+MSS. Hal policj+untllk selanjuhlya, dalam tulisa~lini, ,Jisingirli berarti pula menambah nilai cwnd kat RP. untuk setiap paket yang meninggalkan Apabila suatu saat terjndi pemintaan atas nehvork. dokumen tettentu dan proxy dapat menjawabnya 3. Ketika ACK berikutnya tiEa meng-acknowdengan mengambilka~ldoki~mendari dalam cacl~eledge data yr.ng b a ~ cwnd , = sstresh nya, maka kondisi ini disebr~thit. Sedangkim, apa(nilai b l t r e s h pada langkah I). Dalan~ bila proxy hams menghtibungi server usal untuk menjawab request kliennya, maka kondisi ini ha1 ini 'ICP kembali ke fase coiigestiorr disebut nriss. avoi(lflln,rce. T~tjuan utanla tliterapkan~lya algoritrna replacerrleirr policy adalall ~ ~ n t umernaksimalkarl k HTTP penggtntaan resource, termasuk oenaeunaan nlair~ HTTP memp3kan salah satu protokol aplikasi . itlemory, disk slmce, dan t~ei~%,o~-k bandrtirlth (Dilley yang nlemanfaatkan TCP sebagai protokol dalaln & Arlitt, 1999). men-lranmisikan data. HTTP bukanlah protokol l~ntuk mentransfer hypertext, namnn HTTP Algorltma Greedy-Dcral nierupakan protokol ontuk meiltransmisikao Algcritn~a Greedy-Dual, yang pertalna kali dolcumen dengan kcmudahan perpindttltan antarl~jpertexl Data yang ditrilnsmisikan d:~pat b e ~ p n diperkenalkan ole11 Young pada tahu11 1991, diterapkan pada manajen~enpages di mcmori utama sistern teks biasa, hypoiext, audio, gamba~,taau sebarang komputer. iJag1,s l~ada menlori utama (cache) informnsi yang terakses Internet. memiliki 11ku1.an yang sama nanlun dengan biaya HTTP mempakan protokol climtt/server; (cost) mengambil dari ~nemori sekultder yang contoh aplikasi atau penggunaan HTTP adalalt berbeda. ko~nunikasi dpta arltara sebuah web browser dan Setiappages Liberi sebuah nilai H. Nilai H diberi sebuah web server (Stallings, 2000). nilai awal sesuai dengan biaya mengambilnya dali memori sekunder ke dalam memori utama (cnclie). - . -.K d k a pertukaran page hams terjadi, pages dengar Dalam sebuah jaringan ltompbter lokal, pengnilai H paling rendah, min,,, dihapus dari cac/~e gunaan aplikasi :-ITTP oleh klien-ltlien sering lalu nilai H setiap page dikmangi ~ e n g a nmi.n,. Jika dilayani oleh sebuah server yang disebut proxy. sebuah page diakses kembali nilai cost-nya dikem~ ~ l ~ tidak l ~semua i dokumen yang di-requesl balikan menjadi nilai H awal, yakni senilai biay;~ dineroleh lanesunP dnrj rnmmPt atau diakses ~~r~~ membawanyd ke dalam cache dati nmmori sekuit. Proxj membantt, menyin,pall dokumen menurut der. sebuall aturan penyimpanan tertentu. Dengan demikian, page yang teralthir terakses Dengan demikian, proxy dapat dikatakan memiliki nilai H terbesar dibandingkall dengan jebagai sisteni perantara yarlg dapat bertindak page.; yang jarang diakses. sebagai server dan juga sebag~iklien. Dalam inter. aksinya terhadap klien-klien yang ntelakukan Algoritma Greedy-Dual-Size request, ia disebut sebagai server. Caching pada web proxy mcna~~gani dokurnen . r' Proxy dapat pula dianggap sebagai klien ketika dengar1 ukdran yang berbeda. Cao dan lrani, di tahur~ mendapatkan request yang tidak tersi~npan secara 1997, msngenlbangkan algortinra GI-eedy-Dual internal. Proxy akan bertindak sebagai l i e n dengan dengan mengubah tiilai H merljadi c o s t / s i z e , melakukan request terhadap server laill yang dapat dengan cost adalah biaya membi~wa suatu meinberikan jawaban atas reqrrest yang diminta kliennya (Stallings, 2000). dokumen ke cache dan s i z e merupakan ukman doku~nenitu dalam satuan besar dokumen bytes. Untuk me~nperbesarmsio hif, fullgsi c o s t diReplacertterzt Policy beri nilai satu. Algoritma ini sering disebut sebagai Sebuah server proxy melniliki kapa~itasstorage GD-Size(1). Dengan cam ini, dokumen-dokunlen yang terbatas untuk menyinlpan dokumen bemkuran besar akan tnemililci nilai prioritas (objeklfile) yaug kerap diminta oleh client-nya. Pada hriority key) yang lebill kecil dan ctltderung akan saat storage tersebut penuh, malta server proxy dilxapus jika tidak pemah dialtses. Cintuk memakliarus menentukan dokumen yang harus dihapus. simalkan nilai rasio hit aka? lebih mengu~~tungkan Tekllik menghapus dokumen menggantikannya
--
~
-
jika mengliapus sebualt dokunien yang berukulan besar (dan akan nienjadi r~rissjika ia diakses lagi) lal-ipada me~igl;aptts banyak dokumen bemkuran l(ecil unt~rkukuran di.sc space yaiig sama. Algortima GD-Size(1) berhasil memaksilnalkan rasio hit. namun liarus mengorbankan rasio byte hit rote menjadi rendah. Algoritnia yatig kemudiaan dikembangka~i oleh Cao dan lrani adalali GDSize(packets), yalcni derigan memberi nilai cost i~ntuksetiap dokumen 1nen.jadi 2 + s i z e / 5 3 6 , yang nierupi~kan nilai dugaan jumlah paket yang dikirim dan diterima jika tejadi miss. Algoritma GD-Size(packets) berha-sil memperolell nilai rasio hit dan rasio.6yte hit yang besar. Fungsi cost tersebut memberikan nilai prioritas yang lebih besar untuk dokuinen berukuran besar daripada kepada dokumen yang bemkuran kecil. Hal ini men.berikan kecenderugan lebih besar bagi dokumen-dok~lmen berukuran kecil untuk dihapus daripada dokurnen-dokumen berukuran besar klil~susnya apabiln dokumen-dokumen berukuran besar ini sering diakses. Jika suatu dokumen herukuran besar jarang diakses kembali, rnaka dokunieii ini akan diliapus karena inekanisme frxirrg.
..
Clock adfllall parameter waktu, ylhi pengliitung waktu jalannya ;intrian yang diberi nilai awal no1 dan dipcrbaliarui ~iilainyn dengan nilai priorify key file yang barn saja diliapus - Parameter I;,(£1 adalalt pengliitttng junilali hit bagi file f . Apabila terjadi hit (yakni i. adil di cache) inalta 17, lf i ditambali satu: F, ( f l =F, (f 1 +I. Apabila tejadi miss maka dihitung sebagai satu tali akses bagi file f yang hant. - Size (El merup:ikan parameter bagi ukuran file E. - Parameter C o s t f f ) adalali binya untuk menyirnpan file f ke dalam cac!re. Dengan nilai cost bagi setiap filo ditetapkml dengan folm~~la: s i z e (f! cose(fr=2+ c (1.1J dcngan c nierupakan telalxln yanf; bemilai 536. :,ailg bar11 File f de~tgaiinilni P, i f ) s i i kenibali dalaiii prior.rf~' rjrrer~e, dan selesai.
Algoritnla Gree~ly-Drrfll-Size-F~'eqr~(~~~c~
Algoritma Greedy-Drra-Size-Freqt~ertc~ (GDSF) 2. Jika file f yang diminta lilien mut~pakanniiss, merupakan pengembangan lebili lanjut algoritrna tidak ditemukan di dalani cache. clan dijawab CiDS, yang lianys mempertimbangkan faktor bkuran dengan terlebih dahulu menghubungi server dokumen daii fungsi cost yaiig diperlukan untuk asal, maka pada sar~tfile f tersebut sampai ke mengambil dokumen dari cache. Algoritma GDSF kiien, praxjl akan menyimpannya dalam cache. yang pada saat ini digunakan oleh program .server Ur luk itu: proxy Squid 2.2, sehuali program aplikasi server Frekucnsi akses bagi file f diberi nilai sato. p r o x j ~dengan lisensi GNU, menambahkan frekuensi Prioritj, key. P, (f ) , dihitung dengar1 for.. aksrs sebagai faktor lain dalam pemberian nilai mula: prioritas H kepada setiap dokumen. Seliingga nilai H = c o s t / s i z e pada algoitima GDS menjadi ~ = r e qfu e n c y x ( c o s t / s i z e ) pada algoritma Pr (fevicCed) merupakan C l u c k , yalilii GDSF. prioritj, lrqy file yang bar11 saja dihapus. Berilcot ini oeskripsi jalannyn algoritma GDSF Apabila terdapat beberapa buah file (Clierkasova, 1999): terhilpus maka digunakan foimula (5) untuk I . Jika suatu file f yang di-reqlfe.sl merupakan menentukan iiilni Clock. suattt hit. bernda pads cache, maka perminta:~ e File f disisipkan pada prioi-it)' qriene iiii dijawat dengm mengainbil file yang dengar1 nilai P, (El yang telali diliitung. terdapat pada c.zchc, dan Kapasirils cnclte terpakai Used diliitung e Jumlali cache terpakai. Used, tetap. dengan: Freqtlerrcj? C O N I I ~ P ~bagi f , F, lf ) , bertam5ah satu. Used = Used -1 Size ( f ) 131 Priority kc)>, P, (f ) , diliit~lngirlang tnengcu~iakanformula (I). .. Setelah itu, salah salu konSisi betikot ini akdn c o s t (f) terjadi: ~ , ( f )=clock+~,(f)x-(1) Size (f)
.
Apabila U s e d T o t a l , beralti terdapat cukup space trntuk menyin~panfile f dan tidak ada file yang harus dihapus. File f disimwn pada cache, dan selesai. Apabila U s e d > T o t i l l , maka ha1 ini berarii tidak terdapat citkup ruang koscriig untuk menyimpan f dan beberapa file hams di'iapus. pert an.^, diidentifikasi gu::us niinimal file yang ilkan diliapus dengan prosedttr berikut: Sebanyak k file perlalna (k dapat bemilai satu), f,, f,, f , , ...,f b dengan nilai prioritis terendah dalam priority queue /;.ee dipilih sede,iiikian seliingga terpenuht U s e d E s t i m a 1 : e Total, dengar. forn~ola:
1=1
(a) Bila file asal f yang akan disimpan dal;niii cache biikan salnh satti dari filefile £, f,, f, ,..., fk 1nak:l berlaku tindnkan berikut: i. C l o c k diliitung d1:ng.n menggonakan cara:
Jadi. forniula (1) di atas menjadi:
Algoritma ini n~erupakanvarian d a ~ inlgorihi~a LPlJ ynng merlghapus obit:k-ol~jel: yang tidak poptrler atau objek dengan fiekuensi altses yang paling rendah. Dengan nienggutlakati o'j~rmwic agirrg, sebuali faktor yang disebirt usia cache. ditambahkan pada fungsi Jumlah refevei~r;i suatu objek, pada sadt objek tersebirt diacu atau objjek tersebtit ban1 ditambaliban ke dalarn cache. Algoritrna ini ditujukan unttlk memperbesar nilai rasio h i t . Driignn membe:i nilai fungsi cost sama dengat] satit, maka dokunien derlgan ukurat~ besar akan n,erniliki nilai key yang kecil dan memiliki kecenderungan untuk dihapus.
Algoritma Lccrst Recerrtly Used ((LRU)
Algoritma ini telali uniutn dikenal dalarii berbagai aplikasi yang berkaitan densn sisteln nien~ori virtual atau CPU cache. Aigoritliia L.RI.1 ilkan rnembuang dokonien dokumen yang paling lama tidal( diahscs. Rerikut deskripsi algcritmu LRU: I. Jika suatu file f yang di-request mempakan suabl hit, rnaka reguest dijawab derigaii tncngaml~ilobjek dar; cache, dan ii. Jumlah cache yang akar~ digunafile f tersebut dipindahkaii menjadi kan ditinjau ulang dengatt: k objel: pada umtan terbelakaog pada used = used-2; Size (fi) (6) suatl.~umtan antvian prioritas. r Jun~laliC a c h e u s e d tidak berubah. Update waktu akses file f dengati nikai iii. File-file f,, f2,f ,,..., f, dihapus walau akses terkini atau sekarang. iv. File f disimpan pada cache. 2. Jika suatu file f meriipakan suatu irriss, ~nakaproxyakan mengliouungi server asal. (b) Apabila file asal f yang aken diSetelah tiba, file f akan disilnpal~ pada simpan pada caclre inerupakan salilh cache dengan: sat11 dari file-file £I, f2, f3, ..., fk Urutan antrian prioritas lerbelal
.
.
(b) Apsbila Used > T o t a l , maka ha1 ini berarh' tidak terdal~atcukup ruang kosong unluk menyimpan f dan beberapa file liarus diliapos.
Melalui fiincanaan percobean pertanla pada -. . Tabel l.a, ingin drl~hat pe~igaruh penambahan pengguna (slation) terhadap ketiga output apabila diguriaka~isebu:~librrrrlwidth ckstemal yang tetap, yaitu 64 Kbps. I'mcobaall ini ditujukan pada ketiga Apahila kondisi (b) terjadi, ~naka algoritma popoler yang diterapkan oleli S~:;uidu~ituk diitlentifikasi gugus minimal file ?anz akan melihat knungg~lanmasing-masing algoritma. diliapus dengan prosedur jerikut: Sedangkan pada rancangan percohaatl keciua pada 'Tabel l.b, illgin dililiat kine~jaserver pro.*), Sebanyck k file pertama (k daps' Eernilai pada sebuah algorilma repincemerrt p o l i c ~ yang ~ satu), fl,f,, f ,,..., fk, dengar, nilai prioritas waktu akses terlawas dalam p~.ioriqp terbaik pada dua kondisi b.7rt(iwid//1 ekstemal. Tujuan percobaan kedua ini adalah mengetaln~i qlmre dlpilih sede~nikian szliingga terpeilgdruh penambahan jumlah klien atau pengguna prnulii UsedXstima te l'otal, terhadap utilitas pemakaian bai~dividth. dengan foimula (4).
-Ukuran Kinerja Proxy
-
Hit Rate Ukuran kinecia yang paling umuni adalah hit rote. Hit rate merupakan ukuran jumlali referensi kepada objelc yang tersimpan dalam cache. Hit rate 70% hesarti ba.lwa ada tujuli dari sepululi reqrtest dapat ilitemi~kandapa cache, di proxy.
Tahel I . Rancangan Percob~ianSiniulasi a. Percobaan pertama Faktor: Jvmlah k 1 i e n : l O J e n i s RP :LW, LFUDA. GDSP Kap. D i s k :tetap BandEkst. : 6 4 Kbps output
Byte-Hit-Rntc Ukuran ki,~eijapenting lainnya adalah, bjite hit rate, yaitu j!~n:!aIi byte pang laogsung dapat rlikerrlbalikan kt:,>ada klierr sebagai sebapian dari seluruh l)yte yang diminta. Ukuran ini menjadi penling karet~aukuran objek web singat bervariasi mulai dasi hai~ya beberapa byte saja hingga jutaan byte serla~igka:~bailiiwidIh eksternal :nempakan sebuah resowce yang terbatas (te~kadangoialial). Byte /lit rate 30% berarti bahwa tiga Gari sepululi bytes yang di-request klien diperoleh d a ~ icache; sedangkan 70% dari lceseluruhan byte yang dikembalikan kepada klien didapat dari external i~efwork. User-Laterrcy Ada pula ukuran efisiensi yang menydnglcut prilial utilisasi CPU atau 110. Rala-rata waktu loading suatu objek (atau latensi temu kembali objek terbada~user) merupakan salah satu ukuran yaiig diinginkan end-user. (Dilley Arlitt, 1999).
Rancangan Per:obaan Sirnula4 Untuk mengetahl~i pengaruh besar populasi pengguila terhadap kinerja server prox:', digunakan t:knik si~nulasi dengan rancangan percobaaaii seperti disusun dalam Tabel I .
H i t rate ~~
Byte llir r a t e i3Xt. Band. u t i . l i z a t i o n c
A -
~
~
m
~
1
1
.
2
1
-
.
b. Percobla11 kedua i?akEQzi-
-
- -___
Jurnlah k l i e n : 2 0 . 7 5 . 1 0 0 , 1 5 0 . 2 0 0 . 5 0 0 , 1 0 0 0 Jenis RP :GDSF Kap. Disk :t e t a p Band. EksC. : 6 4 , 128 Kbps
output: Hi? r a t e Byce H i t r a t e E x t . Band. I ~ t i l i z a t i o n . -
I
_
-
-
Rletode Pengumpulan Data Davison, 1399, menjelaskan kekurangaii penggunaan file log (misaliiyc file access.log, pada Apache Web Sewer) pada trafik web suatu server unti~k mengkarakterisasi maupun meliganalisis kineijanyii. Sementara itu, Bruce A. Mah, 1997, meiigelliukalta~~ metode yang sehnrusnya digimaLan untuk peilgumpulan data beban kerja. Metode yang dimaksud adalall penelusuran paket O~uckettruces). Penillis menggunakan metode yang dikeinukakan ole11 Bruce A. Mt~b,yaitu menggunakan bantuan progani utiliti yang tersedia gratis, Ethereal versi 0.10.0 yang ditulls ole11 Gerald Combs.
.
-
.
~