BAB I
PENDAHULUAN
1.1. Latar Belakang
Arus informasi yang cepat, hasil analisis data yang tepat serta proses perhitungan yang akurat sangat dibutuhkan dalam menunjang perkembangan
bisnis dalam industri apapun, demikian juga dalam industri jasa. Persaingan yang ketat menuntut pengelolaan bisnis yang profesional oleh manajemen perusahaan.
Proses-proses manual ataupun double proses yang tidak sebaiknya dilakukan, perlu di “re-engineer” untuk meningkatkan produktivitas, efektifitas serta efisiensi resource yang ada. Hal-hal tersebut sangat dimungkinkan dengan
mengimplementasikan Teknologi Informasi yang disesuaikan dengan model bisnis perusahaan.
Salah satu bentuk implementasi tersebut adalah dengan membangun jaringan komputer. Dengan jaringan komputer, waktu yang diperlukan untuk pengiriman data atau informasi menjadi lebih singkat/cepat karena semua
komputer terhubung dalam satu jaringan yang sama, sehingga masing-masing komputer yang terhubung dalam jaringan tersebut dapat berkomunikasi satu
dengan lainnya.
Jaringan komputer itu sendiri dapat dibangun dengan beberapa pilihan arsitektur, salah satunya adalah client-server system. Dengan menggunakan
server, data yang disimpan didalamnya dapat dilihat oleh semua client yang memerlukannya dalam waktu yang cepat dan kapan saja. Karena itu unjuk kerja
komponen-komponen pada server sangat menentukan unjuk kerja jaringan
2
komputer tersebut. Dengan demikian maka pengukuran kinerja level komponen pada server sangat diperlukan. Hasil pengukuran dan analisisnya sangat
diperlukan sebagai acuan untuk meningkatkan unjuk kerja perusahaan yang memerlukan dukungan jaringan komputer tersebut.
Penelitian sebelumnya pernah dilakukan oleh Daniel A. Menasce tahun
1994 untuk memodelkan component level performance. Pada penelitian tersebut, analisisnya hanya sampai pada level komponen, tanpa memperhatikan jenis
protokol yang bervariasi (Menasce, 1994). Keakuratan hasil analisis perlu diuji dengan analisis sampai pada protokol jaringan. Penelitian yang perlu dilakukan adalah analisis kinerja yang diperlukan pada tingkat komponen pada saat
komponen mengolah protokol-protokol jaringan komputer yang digunakan. Hasil analisis tersebut diperlukan karena tiap protokol memiliki fungsi yang berbeda
dalam server dan jaringan komputer tersebut.
PT. Telkom Divre V Jawa Timur merupakan salah satu perusahaan yang membutuhkan hasil analisis kinerja sistem level komponen dan protokol jaringan
komputer untuk mendapatkan hasil analisis kinerja server yang ada di organisasi tersebut. Dengan didapatkannya tingkat unjuk kerja ini, maka administrator
jaringan dapat melakukan tuning untuk meningkatkan unjuk kerja. Hasil analisis unjuk kerja ini juga dapat digunakan sebagai salah satu acuan untuk mengimplementasikan manajemen jaringan komputer dengan tepat.
1.2. Perumusan Masalah
Berdasarkan latar belakang diatas, masalah pada Tugas Akhir ini dapat
3
Bagaimana menganalisis kinerja level komponen dan protokol jaringan komputer pada server di PT. Telkom Divre V Jawa Timur?
1.3. Batasan Masalah
Batasan masalah pada Tugas Akhir ini adalah :
a. Sistem ini memanfaatkan file log dari Ethereal untuk mengambil packet
capture pada Server sebagai data dari jaringan komputer.
b. Sistem ini menggunakan file log dari Microsoft Management Console pada
Windows 2000 untuk mendapatkan data Component Level pada server yang akan dianalisis.
c. Sistem ini menggunakan PHP untuk melakukan perhitungan dan analisis data.
d. Sistem ini menggunakan database MySQL untuk penyimpanan data.
e. Sistem ini menggunakan program untuk membaca file log ethereal untuk
kemudian disimpan ke dalam database MySQL.
f. Sistem ini menggunakan program untuk membaca file log dari Microsoft Management Console untuk kemudian disimpan ke dalam database MySQL.
g. Server yang dianalisis adalah Server Capex-IS yang digunakan untuk pengendalian investasi di PT. Telkom Divre V.
h. Pada Tugas Akhir ini tidak dibahas tentang Database, Information System dan Management Information System yang berkaitan dengan Server Capex-IS serta manajemen jaringan komputer di PT Telkom Divre V.
1.4. Tujuan
Tujuan Tugas Akhir ini adalah : Menganalisis kinerja level komponen
4
dan outgoing link. Analisis pada level komponen tersebut dilakukan dalam memproses protokol-protokol UDP, TCP, EIGRP, ARP, STP dan HTTP.
1.5. Sistematika Penulisan
Sistematika yang digunakan dalam penulisan Tugas akhir ini adalah sebagai berikut :
BAB I PENDAHULUAN
Bab ini akan dibahas tentang latar belakang masalah, perumusan masalah, batasan
masalah, tujuan dan sistematika penulisan yang digunakan pada penyusunan Tugas Akhir.
BAB II LANDASAN TEORI
Bab ini membahas tentang landasan teori yang digunakan dalam penyusunan Tugas Akhir. Adapun teori yang dibahas adalah Performance Modelling
Concepts, Mean Value Analysis, PHP, MySQL, IIS, Ethereal dan Microsoft Management Console.
BAB III METODOLOGI PENELITIAN
Bab ini dibahas tentang metodologi penelitian mulai dari pengambilan data, variabel penelitian, perancangan sistem, metode analisis kinerja sistem yang
digunakan, DFD dan struktur tabel.
BAB IV IMPLEMENTASI DAN EVALUASI
Bab ini akan membahas tentang implementasi dari analisis kinerja sistem dan
5
BAB V PENUTUP
Bab terakhir ini berisi tentang kesimpulan dari seluruh bab sebelumnya serta saran-saran yang membangun. Kesimpulan merupakan rangkuman dari seluruh bahasan. Saran berisi tentang kemungkinan pengembangan lebih lanjut dari
BAB II
LANDASAN TEORI
Bab ini akan membahas tentang teori-teori dan aplikasi–aplikasi pendukung dalam menghitung dan menganalisis kinerja level komponen dan
protokol jaringan yaitu : Performance Modelling Concepts, Microsoft Management Console (MMC), Ethereal, MySQL, PHP dan IIS. Performance Modelling Concepts merupakan standar yang digunakan untuk menghitung
kinerja sistem.
2.1 Performance Modelling Concepts
Metric Analisis Kinerja secara umum digolongkan menjadi 2 bagian besar yaitu : berdasarkan Response Time dan Throughput (Menasce, 1994). Hasil
perhitungan Response Time berdasarkan pada waktu penyelesaian task mulai dari awal sampai akhir event, mulai task datang, dilayani sampai task meninggalkan server. Hasil perhitungan Throughput berdasarkan pada jumlah task yang dapat
dilayani dalam waktu tertentu, selama waktu tertentu server dapat melayani berapa task.
2.2.1. Performance Modelling Concepts untuk Physical Disk dan Processor
Tiga hukum yang digunakan untuk mengevaluasi performance atau kinerja sistem adalah: Utilization Law, Little's Law dan Forced Flow Law
(Menasce, 1994). Hukum-hukum tersebut akan menghitung Utilization, Response Time, Service Time dan Throughput sistem serta server.
7
a. Utilization Law
Selama dilakukan pengamatan dalam periode waktu T, task datang ke
server, server memproses task sampai selesai dan meninggalkan server. Selama
periode waktu T pada server, dapat diketahui:
a. Jumlah task yang datang ke server selama waktu T, yang diidentifikasikan
dengan A..
b. Total waktu dimana server sibuk melakukan proses terhadap task yang
datang selama waktu T, diidentifikasikan dengan B.
c. Jumlah keseluruhan task yang dapat diselesaikan oleh server
diidentifikasikan dengan C.
Ukuran diatas dapat digunakan untuk menghitung :
a. Rata-rata service time untuk task yang dapat diselesaikan dalam unit of
time : S = B/C (2.1)
b. Output rate of Throughput of server, dalam satuan task per unit of time :
X = C/T (2.2)
c. Prosentase dari periode pengamatan dan server melakukan proses task, yang disebut Utilization of Server : U = B/T (2.3)
Perkalian antara Service time dengan Throughput menghasilkan Utilization.
B/C x C/T = B/T (2.4)
Hukum Utilization :
U(i) = X(i) x S(i) (2.5)
8
b. Little's Law
Jumlah task yang diproses oleh server pada masing-masing selang waktu
t selama periode pengamatan menghasilkan jumlah total waiting dan process time
untuk semua task selama waktu T. Pengukuran dari task yang selesai C, dalam
periode pengamatan T sama dengan akumulasi waiting time W selama T, dapat
digunakan untuk menghitung :
a. Rata-rata response time task terselesaikan, dengan satuan unit of time :
R = W/C (2.6)
b. Rata-rata jumlah task pada server : N = W/T (2.7)
c. Throughput Server : X = C/T (2.8)
Perkalian antara response time dan Throughput sama dengan rata-rata
jumlah task pada server, atau rata-rata panjang antrian pada server :
W/C x C/T = W/T (2.9)
Little's Law adalah relasi :
N(i)= R(i)x X(i) (2.10)
dimana i adalah server.
c. Forced Flow Law
Sebuah transaksi akan mengalir sampai sistemyang terdapat padaserver.
Sebuah transaksi mungkin mempunyai beberapa task yang harus selesai sebelum meninggalkan server. Selama waktu pengamatan T, dapat dihitung :
a. Jumlah transaksi yang dapat diselesaikan oleh server C(0).
b. Jumlah task yang dapat diselesaikan oleh server i C(i).
9
a. Rata-rata jumlah task per transaksi dari server(i), yang disebut sebagai Visit Ratiodari server :
V(i) = C(i)/ C(0) (2.11)
b. Rata-rata jumlah transaksi yang dapat diselesaikan server selama waktu T,
yang disebut System Throughput :
X(0) = C(0)/T (2.12)
c. Rata-rata jumlah dari task yang dapat diselesaikan server i selama waktu T,
disebut Server Throughput:
X(i) = C(i)/T (2.13)
Perkalian System Throughput dengan Visit Ratio sama dengan Server Throughput seperti pada persamaan 2.14.
C(i)/C(0) x C(0)/T = C(i)/T (2.14)
The Forced Flow Law :
X(i) = V(i) x X(0) (2.15)
Sistem Throughput dapat dihitung dengan Visit Ratio dan Throughput
pada suatu server. Dengan mengetahui Visit Ratio dari semua server dan
Throughput hanya satu server, memungkinkan dilakukannya perhitungan
Throughput pada semua sistem dalam server.
2.2.2. Performance Modelling Concepts untuk Incoming/Outgoing Link
Untung menghitung analisis kinerja level komponen pada Incoming dan
10
dan 2.17 adalah rumus yang digunakan untuk menghitung Residence Time pada level komponen incoming dan outgoing link.
R
I ncL i nk=
1à õDDI ncLinkI ncLink (2.16)R
Outli nk=
1à õDDOutlinkOutLink(2.17)
Dari persamaan 2.16 dan 2.17, Service Demand yang diidentikasikan
dengan
D
didapatkan dengan menggunakan persamaan 2.18 dan 2.19.D
I ncLi nk=
Avg(si ze=f rame)Bandwi dthIncLink (2.18)D
OutLi nk=
Avg(si ze=f rame)Bandwi dthOutLink (2.19)2.2 Mean Value Analysis
Mean Value Analysis digunakan untuk menyelesaikan analisis dari
closed queueing networks (Bobbin, 2004). Tiga Operational Laws dan rangkaian iterasi perhitungan menghasilkan Throughput dan Response Time dari suatu sistem, seperti halnya utilization dan degree of multiprogramming dari suatu
sistem adalah 0 (n = 0). Jika tidak ada multiprogramming, panjang antrian
pada masing-masing server 0. Jika model menyajikan closed system, degree of
11
yang berarti server i) dan rata - rata Service Time (S, dengan subscript i, yang
berarti server ke i) dapat diketahui untuk setiap server.
Untuk menghitung Mean Value Analysis :
a. Rata-rata Residence Time pada tiap server adalah waktu yang dihabiskan di server oleh suatu transaksi selama kunjungan ke server (Bobbin, 2004)
seperti ditunjukkan pada persamaan 2.20.
R
i( ) = V
n
iR
i= V
iS
i(n) 1 à nö n à 1
[
(
)
]
(2.20)V(i) x S(i) =D(i) disebut sebagai Service Demand pada server.
b. Gunakan total dari rata-rata Residence Time semua server untuk menghitung
System Throughput pada derajat dari multiprogramming level = n, pada
persamaan 2.21.
X
0( ) =
n
Î kk= 1Rk( )n n(2.21) c. Dengan menerapan Little's Law, panjang antrian arus multiprogramming
level dapat diperoleh untuk tiap-tiap serveradalah seperti persamaan 2.22.
n
i( ) = X
n
0( ) R
n
i( )
n
(2.22) d. Kenaikan n dan pengulangan langkah 1-3 sampai n > actual degree ofprogramming. System Throughput telah dihitung pada langkah b. Maka
System Response Time adalah tampak pada persamaan 2.23.
R n
( ) =
Vk Î k
k= 1Rk( )n
(2.23) Utilization Law dan Forced Flow Law dapat diterapkan untuk memperoleh informasi dari Mean Value Analysis untuk menentukan ukuran unjuk
12
2.3 Protokol Jaringan
Protokol jaringan adalah standar atau konvensi yang digunakan untuk
komunikasi antar perangkat jaringan. Protokol terdiri dari format rule yang mendefinisikan bagaimana data dikirimkan dari suatu Source Address ke
Destination Address.
Dalam membahas protokol jaringan, tidak dapat dipisahkan dari keberadaan OSI Layer Model, yang dikembangkan oleh International
Organization for Standardization (OSI). OSI Layer merupakan standar yang digunakan untuk komunikasi data antar perangkat jaringan yang bervariasi dan dari vendor yang berbeda.
OSI Layer terdiri 7 layer, masing-masing layer bisa mempunyai sub layer (Odom, 2000) yaitu :
a. Layer 7 (Application Layer)
Suatu aplikasi yang berkomunikasi dengan komputer lain akan mengimplementasikan OSI pada layer application ini. Contoh protokol yang
ada pada layer ini adalah HTTP, FTP, WWW Browser, SMTP gateways (Eudora, CC:mail), SNMP.
b. Layer 6 (Presentation Layer)
Layer ini bertujuan untuk mendefinisakan format suatu data yang akan dikirimkan dari application layer. Contoh dari presentation layer adalah JPEG,
ASCII, EBCDIC, TIFF, GIF, MPEG, MIDI dan proses enkripsi. c. Layer 5 (Session Layer)
13
komunikasi berakhir. Contoh dari layer ini adalah SQL, NFS, Netbios Name, AppleTalk.
d. Layer 4 (Transport Layer)
Layer ini bertanggung jawab terhadap recovery error dalam pengiriman data, bagaimana jika pengiriman data tidak sampai pada tujuan atau ada kerusakan
data dalam proses pengirimannya. Contoh protokol pada layer ini adalah TCP, UDP, SPX.
e. Layer 3 (Network Layer)
Layer ini mendefinisikan end to end pengiriman packet (data yang berada pada layer 3 disebut packet). Untuk mendefinisikan end to end ini diperlukan
alamat logical yang disebut IP Address. Dalam layer ini didefinisikan bagaimana proses routing bekerja dan bagaimana jalur dipelajari oleh packet
yang akan dikirimkan ke tujuan/Destination IP. Contoh protokol pada layer ini adalah IP, IPX, AppleTalk DDP.
f. Layer 2 (Data Link Layer)
Data Link Layer mendefinisikan bagaimana data dikirimkan melalui media pengiriman yang bervariasi. Contoh protokol pada layer ini adalah IEEE
802.3/802.2, HDLC, Frame Relay, PPP, FDDI, ATM. g. Layer 1 (Physical Layer)
Layer ini akan memberikan karakteristik fisik media jaringan komputer
14
Dari penjabaran OSI layer diatas, dapat diketahui bahwa protokol tidak dapat dipisahkan dari OSI Layer Model karena tiap protokol bekerja pada layer
OSI. Contoh protokol dalam layer OSI antara lain : 1. Addressing Resolution Protocol (ARP)
ARP akan dikirimkan ketika suatu client akan mengirimkan data ke client lain
tetapi hanya mempunyai alamat MAC saja, tidak diketahui IP Addressnya. Untuk mengirimkan data diperlukan MAC Address dan IP Address, sehingga
ARP akan mengirimkan frame ke seluruh client yang berada dalam 1 network untuk meminta alamat IP suatu client yang hanya diketahui MAC Addressnya. 2. User Datagram Protocol (UDP)
UDP adalah protokol process-to-process yang menambahkan alamat port dalam proses pengirimannya. UDP juga melakukan chek-sum error control
yang berada pada Transport Layer OSI. Protokol ini bersifat connection-less, artinya tidak diperlukan proses handshaking sebelum memulai komunikasi data.
3. Transmision Control Ptrotocol (TCP)
TCP menyediakan layanan penuh pada lapisan transport untuk aplikasi. TCP
merupakan protokol transport yang reliable/connection-oriented, artinya koneksi antar source dan destination harus dibangun terlebih dahulu sebelum
source mengirimkan data ke destination.
4. Hypertext Transfer Protocol (HTTP)
HTTP adalah standar rule yang digunakan untuk transfer file berupa text,
15
World Wide Web (www). Untuk menampilkan data dari protokol HTTP digunakan tool standar yang dikenal dengan nama browser.
5. Spanning Tree Protocol (STP)
STP adalah protokol manajemen yang merupakan standar IEEE 802.1 untuk media akses bridge. STP merupakan algoritma dalam mengurangi redundancy
pada jaringan.
6. Enhanced Interior Gateway Routing Protocol (EIGRP)
EIGRP merupakan pengembangan dari IGRP yang digunakan pada skala network yang besar daripada pada IGRP. Protokol EIGRP digunakan oleh router untuk berkomunikasi dengan router lain.
2.4 PHP
PHP (Hypertext PreProcessor) merupakan script yang membuat sebuah
halaman web menjadi dinamis, yang berarti halaman web menjadi lebih interaktif. Halaman yang akan ditampilkan dibuat saat client melakukan request halaman tersebut, sehingga informasi yang diterima oleh client adalah selalu informasi
yang terbaru. Script PHP dieksekusi pada serverdimana script tersebut dijalankan (serverside), jadi semua informasi yang ingin ditampilkan di halaman web bisa
dilihat dengan baik oleh semua jenis browser client. PHP termasuk dalam
HTML-embedded, oleh karena itu script PHP bisa disisipkan pada sebuah halaman HTML.
Perbedaan utama antara script PHP dengan HTML adalah HTML murni sebuah dokumen teks sedangkan script PHP di dalamnya terdapat program yang
16
teks. Proses request pada HTML murni dan PHP dapat dilihat pada Gambar 2.1 dan Gambar 2.2.
Gambar 2.1 Proses pada request HTML murni
Pada Gambar 2.1 dan Gambar 2.2 tersebut terlihat bahwa perbedaan dari
keduanya adalah adanya script PHP yang akan diproses/diinterpretasikan terlebih dahulu oleh PHP intepreter dalam web server sebelum dikirimkan ke browser
pada client. Proses inilah yang menyebabkan PHP mampu membuat sebuah halaman web menjadi dinamis.
CLIENT
Gambar 2.2 Proses pada request PHP
17
berupa kumpulan script Perl. Kemudian Rasmus membuat versi kedua dari PHP dengan cara menulis ulang script-script Perl menggunakan bahasa C. Pada versi
kedua ini ditambahkan dua fasilitas yang penting yaitu Form HTML dan koneksi dengan database MySQL. PHP versi ketiga dikembangkan oleh Rasmus dan suatu kelompok open source, dimana pada versi ini PHP mulai menampakkan
keunggulannya sebagai sebuah bahasa server scripting yang handal (Choi, 2000). Melalui perkembangan yang pesat ini banyak fasilitas yang ditambahkan dan oleh
kelompok ini PHP disebut sebagai "PHP: Hypertext Preprocessor". Sintak yang digunakan berasal dari bahasa C, Java dan Perl. Sampai dengan tulisan ini dibuat, versi terakhir dari PHP adalah 4.3.10. PHP juga mendukung beberapa layanan
yang menggunakan protokol seperti IMAP, SNMP, NNTP, POP3, HTTP, dan protokol-protokol lainnya. Beberapa database yang didukung oleh PHP
diantaranya adalah Adabas D, Ingres, Oracle, dBase, InterBase, PostgreSQL, mSQL, MS-SQL, Sybase, IBM DB2, MySQL, Informix, ODBC (Choi, 2000).
Mekanisme kerja sebuah web server yang memanfaatkan PHP dan
database ditunjukkan pada Gambar 2.3. Web Server PHP akan mengakses database server untuk melayani request dari client.
18
2.5 MySQL
MySQL adalah sebuah sistem manajemen database open source yang
populer dan gratis untuk platform Unix dan Windows. Sistem manajemen database MySQL menggunakan kumpulan perintah sederhana untuk memasukkan, memanggil, menghapus dan memperbarui data, maka dapat
dikembangkan databaseyang kompleks.
Beberapa kemampuan MySQL (MySQL, 2004) adalah sebagai berikut :
a. MySQL bisa diakses dan dimanipulasi dari sejumlah bahasa pemrograman terkenal, diantaranya adalah C, C++, Java, Perl, Phyton dan PHP.
b. MySQL ditulis dalam C/C++ dan dioptimasi untuk platform Unix dan
Win32.
c. MySQL mendukung tipe data yang umum digunakan, termasuk FLOAT,
DOUBLE, CHAR, VARCHAR, TEXT, BLOB, DATE, SET dan ENUM. d. MySQL mendukung subset fungsi query dan pengelompokan lanjut,
termasuk diantaranya GROUP BY dan ORDER BY.
e. MySQL memungkinkan alokasi password tiap server. Password yang melalui MySQL diperlukan untuk encrypted authentication.
f. MySQL mendukung berbagai macam metode koneksi, seperti TCP/IP, soket Unix, dan koneksi untuk Windows NT/2000.
g. MySQL bisa diperoleh secara gratis termasuk aplikasi-aplikasi lain yang
19
MySQL juga merupakan salah satu sistem manajemen database yang stabil di pasaran. Ketika MySQL diluncurkan pertama kali pada pertengahan
1996, beberapa bug dengan cepat dapat diketahui dan diperbaiki. Sekarang MySQL sudah menjadi sangat stabil dan banyak dipercaya oleh korporasi-korporasi di dunia untuk menyimpan data bisnis penting. Data ini biasanya
membutuhkan media penyimpan yang besar dan hal ini bukan menjadi masalah bagi MySQL, karena tabel MySQL dapat menampung data lebih dari 4 Gigabytes.
MySQL 3.23 berisi jenis tabel baru yaitu MyISAM yang sanggup menampung 8 juta Terabytes (MySQL, 2004).
2.6 IIS
Internet Information Service (IIS) merupakan web server berkecepatan tinggi yang digunakan untuk mempublikasikan dan mendistribusikan content
www-based pada standar browser. IIS hanya ada pada platform Windows. IIS 5.0 secara otomatis ada pada Windows 2000 Server atau Windows 2000 Advanced Server serta tidak disediakan untuk Sistem Operasi sebelumnya dari Microsoft.
IIS 5.0 dapat diinstal pada Windows 2000 Professional Edition tetapi ada beberapa fungsi yang tidak dapat digunakan yaitu : hosting multiple web sites,
logging pada ODBC Database serta tidak dapat membatasi IP Address yang
melakukan akses. Service protokol yang disediakan oleh IIS 5.0 (Walker, 2003) antara lain :
a) Hypertext Transfer Protocol (HTTP)
HTTP adalah sekumpulan aturan untuk memindahkan file berupa text,
20
dikenal dengan nama browser pada sisi client. Jenis browser yang dapat digunakan untuk mengakses WWW tersebut antara lain : Internet Explorer
(IE), Netscape, Opera dan lain-lain. b) File Transfer Protocol (FTP)
FTP merupakan standar Internet Protocol (IP) yang berfungsi untuk
mempermudah pertukaran file antara suatu komputer dengan komputer lain pada jaringan internet. Umumnya FTP digunakan untuk mengirimkan file
web page dari pembuat/programmer web ke server agar siapa saja dapat mengaksesnya melalui internet. User internet biasa menggunakan FTP untuk mengambil file yang ada di internet.
c) Simple Mail Transfer Protocol (SMTP)
SMTP merupakan TCP/IP protokol yang digunakan untuk mengirimkan dan
menerima e mail pada jaringan komputer, internet maupun intranet. SMTP ini terbagi menjadi 2 fungsi protokol, POP3 atau IMAP yang digunakan untuk mengambil e mail dari server ke clinet dan SMTP digunakan untuk
mengirimkan e mail dari client ke server. d) Network News Transfer Protocol (NNTP)
21
Gambar 2.4 Service tool pada Administrative Tool.
Service yang disediakan oleh IIS dapat dilihat dan disetting dengan
menggunakan menu Adminstrative Tool, Service, yang ditunjukkan pada Gambar 2.4. IIS dapat disetting secara otomatis atau manual melalui menu Service
tersebut.
2.6 Ethereal
Ethereal adalah salah satu network packet analyzer yang merupakan
software freeware. Suatu Network Packet Analyzer akan melakukan capture
terhadap frame yang ada pada jaringan dan mencoba untuk menampilkan
informasi frame itu sedetail mungkin.
Beberapa keuntungan menggunakan ethereal (Sharpe, 2004), selain free adalah :
a. Berjalan pada platform Windows maupun UNIX.
22
c. Dapat membuka kembali dan menyimpan hasil dari packet capture.
d. Dapat diimpor dan diekspor dengan format program packet capture yang lain.
e. Dapat melakukan filter dengan banyak kriteria. f. Dapat melakukan pencarian dengan banyak kriteria. g. Dapat melakukan banyak analisa statistik.
Untuk melakukan install ethereal, diperlukan Windows Packet Capture (WinpCap) yang merupakan tool standar untuk pembacaan packet pada jaringan
komputer. WinpCap ini dapat diperoleh di http://netgroup-serv.polito.it/winpcap/install/ secara cuma-cuma. Winpcap ini mempunyai kesamaan format hasil packet capture dengan tcpdump. Karena menggunakan
format standar tcpdump, maka file hasil log Ethereal dapat dipindahkan ke format lain yang mendukung tcpdump (Sharpe, 2004).
2.7 Microsoft Management Console
Microsoft Management Console (MMC) merupakan tool yang disediakan oleh Microsoft pada OS Windows NT, seperti Windows 2000 dan Windows XP.
MMC adalah service standar untuk melakukan manajemen seluruh resource dan aplikasi yang berjalan di atas Sistem Operasi (Microsoft, 1999).
MMC menyediakan interface yang sangat mudah untuk dioperasikan oleh Administrator, yang dikenal dengan istilah snap-ins. Dengan snap-ins tersebut, Administrator dapat memanajemen tool dari MMC dengan banyak
23
Gambar 2.5 Menu Tampilan MMC
Menu MMC ini berada pada Control Panel, Administrative Tools, Performance, seperti yang ditunjukkan pada Gambar 2.5. Untuk menghasilkan file log pada saat pengamatan, setting dapat dilakukan secara manual, dan dapat diatur
sesuai keinginan melalui Counters Log. Pada MMC dapat dilakukan setting penulisan ke file log dengan interval waktu tertentu sesuai kebutuhan. Hasil file
BAB III
METODOLOGI PENELITIAN
Bab ini membahas tentang metodologi penelitian dalam melakukan perhitungan dan analisis kinerja level komponen dan protokol jaringan pada
serverdi PT Telkom Divre V. Bahan penelitian, cara pengambilan data, jenis data, analisis sistem dan struktur tabel di bahas pada bab ini.
3.1 Bahan Penelitian
Sebagai bahan penelitian dalam analisis level komponen digunakan data dari file log Microsoft Management Console (MMC). Sedangkan file log Ethereal
digunakan sebagai bahan penelitian untuk menganalisis protokol jaringan komputer.
3.1.1 Pengambilan Data
Pengambilan data dilakukan dengan melakukan capture pada server yang diamati, menggunakan MMC dan Ethereal. Data dari MMC berupa data
attribut level komponen server meliputi physical disk, processor/CPU, sistem, memory dan Network Interface Card (NIC). Data file log Ethereal adalah data
attribut network dengan menggunakan standar winpcap/tcpdump yang mengambil data pada OSI Layer 2 berupa frame.
File log dari MMC dapat diambil dengan cara melakukan setting
perfomance object dan counter pada tool MMC. Dari performance object dapat dipilih obyek apa yang akan diamati, attribut serta instance apa saja dari tiap
atrribut.
25
Gambar 3.1 Setting untuk membuat File Log
Pada menu MMC Log, seperti pada Gambar 3.1 dapat dilakukan setting
nama file yang akan digunakan sebagai tempat penyimpanan file log. Interval atau selang waktu pengambilan capture data dapat diatur pada menu tersebut, pada
penelitian ini digunakan interval terkecil yang disediakan pada MMC yaitu, setiap 1 detik. Hal ini disesuaikan dengan file log dari Ethereal yang rata-rata setiap 1 detik dapat melakukan capture sebanyak lebih dari 3 frame. Menu log MMC juga
dapat digunakan untuk mengatur jadwal capture misalnya, dilakukan setiap tanggal tertentu setiap bulan selama waktu tertentu. Hasil file log dapat ditentukan
format penyimpanannya, pilihan yang disediakan MMC adalah csv, .txt, .tsv dan Binary file.
Gambar 3.2 adalah Menu Select Counters, yang digunakan untuk
26
dari komputer lain dapat dilakukan dengan memilih pada field Select counters from computer. Jenis object dapat diatur melalui field Performance object.
Gambar 3.2 Setting object, counter dan instance pada MMC
Data yang digunakan sebagai bahan penelitian meliputi physical disk, processor, Network Interface Card (NIC), memory, process dan sistem yang dapat dipilih melalui Performance object. Data detail performance object dan counter
yang digunakan pada penelitian ini ditunjukkan pada Tabel 3.1.
Tabel 3.1 Tabel Performance Object yang digunakan
No Performance Object Counters
1 Processor %DPC Time, %Interrupt Time, %Privileged
Time, %Processor Time, %Use Time, Interrupt/sec.
27
Time, %Idle Time, Disk Bytes/sec, Disk Read Bytes/sec, Disk Read/sec, Disk Transfers/sec,
Disk Write Bytes/sec, Disk Writes/sec.
3 System Processes, Threads, Processor Queue Length,
File Write Bytes/sec, File Write Operations/sec, File Read Bytes/sec, File Read Operation/sec.
4 Memory Page Faults/sec, Page Reads/sec, Page Writes/sec, Page Input/sec, Page Output/sec, Pages/sec.
5 Process Creating Process ID, Elapsed Time, Handle Count, Thread Count.
6 Network_Interface Bytes Received/sec, Bytes Sent/sec, Bytes Total/sec, Packets Received/sec, Packets Sent/sec.
Contoh capture data dari file log MMC seperti ditunjukkan pada Gambar 3.3.
“(PDH-CSV 4.0) (SE Asia Standard Time)(-420)”,”% DPC Time”,”% I nterruptTime”,”% Privileged Time”,”% Processor Time”,”% User Time”,…..
“12/ 03/ 2004 08:58:56.625”,“6,472088850993852e-007”,”3,4100392824 268457e-005”,”99,990824001893358”,”3,0409622550157475e-005”,…..
Gambar 3.3. Contoh file log dari MMC
Pada Gambar 3.3 baris pertama menunjukkan header performance object
28
Time pada komponen processor. Kemudian baris kedua adalah data performance dan counter, waktu capture data dilakukan pertama kali adalah pukul
08:58:56.625, tanggal 12/ 03/ 2004, DPC Time adalah 6,472088850993852e-007
dan seterusnya.
Gambar 3.4 Setting capture pada Ethereal
Data penelitian yang digunakan untuk menganalisis protokol jaringan
diambil dari file log ethereal. Setting capture pada ethereal dapat dilihat pada Gambar 3.4. Dari gambar tampak bahwa capture dari ethereal akan membuat file
baru jika ukuran file sebelumnya sudah mencapai 512 Kbytes pada field Next file every dan file hasil capture disimpan pada directori E:\TA Ethereal\ethereal_00001.txt. Dari file log hasil capture tersebut akan dipilih
29
Tabel 3.2 Data dari file log Ethereal
No Data dari Ethereal Keterangan
1 Frame No Frame yang di capture oleh Ethereal.
2 Arrival Time Waktu kedatangan Frame di capture.
3 Time delta from previous packets
Selang waktu antara Frame ke n dengan Frame n-1.
4 Time since reference or first frame
Jarak waktu antara Frame ke n dengan Frame pertama.
5 Packet Length Panjang packet dalam satuan bytes.
6 Capture Length Panjang packet yang di capture dalam satuan
bytes.
7 Destination MAC Alamat MAC Address tujuan dimana Frame
dikirim.
8 Source MAC Alamat MAC Address asal Frame di kirim.
9 Protocol Jenis protokol dari Frame.
10 Destination IP Alamat IP Address tujuan Frame dikirim.
11 Source IP Alamat IP Address asal Frame dikirim.
12 Destination Port Alamat Port tujuan Frame dikirim.
13 Source Port Alamat Port asal Frame dikirim.
14 Seq Sequence Number pengiriman Frame
30
File log Ethereal berformat tcpdump tersimpan secara binary sehingga tidak dapat dibaca dengan text editor biasa. Untuk memudahkan pembacaan
dengan text editor, Ethereal menyediakan fungsi untuk mengekspor/memindahkan dari format tcpdump ke plain text atau ke format yang lain.
Contoh data dari log Ethereal dengan format plain text seperti
ditunjukkan pada Gambar 3.5.
Frame 1 (60 bytes on wire, 60 bytes captured) Arrival Time: Dec 3, 2004 08:56:34.916218000
Time delta from previous packet: 0.000000000 seconds Time since reference or first frame: 0.000000000 seconds Frame Number: 1
Packet Length: 60 bytes Capture Length: 60 bytes
I EEE 802.3 Ethernet
Gambar 3.5. Contoh file log Ethereal
Dari Gambar 3.5 dapat dilihat detail hasil capture dari Ethereal, Frame 1 (60 bytes on wire, 60 bytes captured) menunjukkan urutan frame yang tercapture
pada suatu file adalah pada urutan no 1, kemudian besar frame adalah 60 bytes.
Arrival Time: Dec 3, 2004 08:56:34.916218000 adalah waktu dilakukan capture
frame tersebut. Time delta from previous packet: 0.000000000 seconds
31
adalah selang waktu dengan kedatangan frame pertama. Informasi lain adalah Destination MAC Address : 01:80:c2:00:00:00, Source MAC Address :
00:0b:46:98:36:12, Protokol : Spanning Tree Protocol (STP).
Data file log Ethereal dan MMC selanjutnya akan dimasukkan ke database MySQL dengan bantuan interface. Interface ini akan membaca file
dengan format plain text dan csv untuk dipindahkan ke tabel-tabel yang sudah disediakan.
3.1.2 Variabel penelitian
Metode yang digunakan untuk menghitung dan menganalisis data adalah
Performance Modelling Concepts. Beberapa variabel yang diperlukan untuk menerapkan metode ini adalah (Bobbin, 2004):
a. Periode waktu selama pengamatan dilakukan, diidentifikasikan dengan T.
b. Jumlah task yang datang ke server selama rentang waktu tertentu T,
diidentifikasikan dengan A.
c. Jumlah task yang dapat diselesaikan dalam rentang waktu tertentu T,
diidentifikasikan dengan C.
d. Jumlah total waiting time, diidentifikasikan dengan W.
e. Jumlah transaksi yang dapat diselesaikan oleh server C(0).
f. Total Frame yang dapat di-capture.
g. Rata-rata packet size per frame.
32
Data tersebut di atas akan digunakan sebagai input untuk menghitung kinerja level komponen dan protokol jaringan pada server. Perhitungan yang
dilakukan berdasarkan pada Performance Modelling Concepts, yang pernah dilakukan pada penelitian terdahulu.
3.1 Analisis Sistem
Sistem yang dibuat adalah sistem yang dapat digunakan untuk menghitung dan menganalisis kinerja level komponen dan protokol jaringan
komputer. Sistem ini terdiri dari 2 buah interface untuk memindahkan file log ke dalam database MySQL serta 1 buah modul untuk melakukan perhitungan dan analisis data.
Interface 1 digunakan untuk membaca file log MMC kemudian memindahkannya ke database dalam bentuk tabel, sehingga perhitungan lebih
mudah dilakukan. Interface 1 akan memindahkan data ke tabel processor, process, sistem, memory, disk dan NIC. Tabel-tabel ini digunakan untuk melakukan perhitungan dengan menggunakan Performance Modelling Concepts.
Inteface 2 digunakan untuk membaca file log Ethereal dan memindahkannya ke database dalam bentuk tabel. Tabel yang akan dipakai oleh
interface ini adalah Tabel Frame. Tabel ini digunakan untuk menghitung nilai rata-rata dari frame size, waktu dan hal-hal lain yang berhubungan dengan detail frame yang tercapture.
Satu modul lagi dibuat sebagai interface untuk memudahkan user dalam menggunakan sistem ini. Rekap hasil perhitungan dan analisis level komponen
33
per komponen per protokol, untuk komponen processor, physical disk, incoming link, outgoing link serta protokol UDP, TCP, EIGRP, ARP, STP dan HTTP.
Gambar 3.6. menunjukkan flowchart atau diagram alir dari sistem analisis kinerja level komponen dan protokol jaringan yang akan dibuat. Beberapa proses yang dominan adalah Hitung Kinerja Level Komponen, Hitung Kinerja per
Protokol dan Hitung per Komponen per Protokol.
START
RUN MMC RUN Ethereal
Input File.log ke Interface 1
Input File.log ke Interface 2
Hitung Kinerja
Level Komponen Hitung Kinerjaper Protokol
Hitung per komponen
per protokol
Hasil
END
Gambar 3.6 Flowchart Analisis Kinerja Level Komponen dan Protokol
34
Gambar 3.7 menunjukkan flowchart untuk menghitung dan menganalisis dengan
Performance Modelling Concepts. Tiap Flowchart akan menerima input dari
sistem yang diambil dari database. Dari masing-masing input akan digunakan untuk melewati tahap-tahap perhitungan sampai didapatkan nilai Utilization, Little’s Law dan Forced Flow Law.
Gambar 3.7 Flowchart Utilization, Little’s Law dan Forced Flow Law
Proses Hitung Kinerja per protokol akan menghasilkan jumlah total
frame, jumlah bytes, rata-rata waktu yang diperlukan untuk melewatkan 1 frame, rata-rata waktu yang diperlukan untuk melewatkan 1 bytes, rata-rata bytes dikirim
35
Proses Hitung Komponen per protokol memperoleh input dari file log Ethereal yang telah disimpan ke database, berupa ukuran frame dalam bytes, waktu frame
melewati server, jenis protokol frame, source dan destination MAC Address, IP Address dari mana dan ke mana frame dikirim. Tahap-tahap perhitungan analisis per protokol ditunjukkan pada Gambar 3.8.
START
Input Attribut Frame
Tandai jenis protokol
Hitung total Bytes, waktu per protokol
Hitung Bytes ke server (Received) dan dari Server (Send)
END Hasil Perhitungan
Gambar 3.8 Flowchart menghitung protokol
3.2 DFD
Dari analisis sistem di atas dapat disusun Data Flow Diagram (DFD)
untuk membuat sistem analisis kinerja level komponen dan protokol jaringan. DFD ini menjelaskan tentang proses dan sub proses serta input dan output sistem
36
Gambar 3.9 DFD level 0 sistem analisis kinerja level komponen dan protokol
Pada Gambar 3.9 ditunjukkan bahwa sistem mendapat input berupa authentikasi login dan password dan log file ethereal dengan format plain text dari Administrator. Dari server, sistem mendapat input berupa hasil log file dari MMC
dan Ethereal yang dijalankan di server. Administrator mendapat output dari sistem berupa informasi kinerja server.
Gambar 3.10 DFD Level 1 Analisis Kinerja Level Komponen dan Protokol dt User
37
Pada Gambar 3.10 terlihat beberapa sub proses yaitu : Input dan Save File, Konversi File Log ke Tabel, Analisis Kinerja Level Komponen dan
Authentikasi. Sub proses Input dan Save File mendapatkan input dari Administrator berupa File log dari MMC dengan format .csv serta file log Ethereal yang sudah di ekspor terlebih dahulu ke format plain teks/txt. File log
asli akan di upload ke web server dan attribut filenya akan disimpan dalam tabel datafile.
Sub proses berikutnya adalah Konversi File Log ke Tabel yang mendapatkan masukan dari tabel datafile berupa attribut file yang akan dipindahkan ke tabel Frame dan tabel-tabel MMC. Tabel-tabel ini akan memberi
masukan ke sub proses Analisis Kinerja Level Komponen dan Protokol sebagai dasar untuk melakukan perhitungan. Sub proses terakhir adalah Authentikasi user
dan password untuk mengakses keseluruhan sistem yang berhubungan langsung dengan user yaitu Administrator. Sub proses ini akan mengakses tabel User pada saat authetikasi login dan password dilakukan.
38
Gambar 3.8 menunjukkan DFD level 2 dari sub proses Konversi File Log ke Tabel. Sub proses ini terdiri dari 2 proses yaitu : Konversi dari Ethereal dan
MMC ke tabel-tabel yang telah ditentukan.
Gambar 3.12 DFD Level 2 sub proses Analisis Kinerja Level Komponen dan Protokol
Pada Gambar 3.12 tampak bahwa sub proses Analisis Kinerja Level Komponen dan Protokol mempunyai 3 proses yaitu : Hitung Kinerja Level Komponen, Hitung Kinerja per Protokol dan Hitung Per Komponen per Protokol.
Proses Hitung Kinerja Level Komponen mendapat input dari tabel dan menghasilkan output berupa data hasil perhitungan kinerja per komponen. Detail
dari proses ini ditunjukkan pada Gambar 3.7 dengan menggunakan 3 hukum dasar yaitu Little’s Law, Forced Flow Law dan Utilization Law.
39
Proses Hitung Kinerja per protokol mendapat input dari tabel Frame dan menghasilkan output berupa data hasil perhitungan per protokol. Detail proses
secara pseudocode adalah sebagai berikut : a. Hitung jumlah frame.
b. Hitung jumlah total bytes seluruh frame.
c. Hitung selang waktu antara frame pertama dan terakhir. d. Hitung panjang packet yang menuju server dan dari server.
e. Tandai frame dengan protokol yang sama.
f. Hitung rata-rata packet size/frame, rata-rata time/frame, rata-rata time/bytes dan rata-rata bytes/time untuk masing-masing protokol.
3.3 Struktur Tabel
a. Tabel Datafile
Primary Key : Id_datafile
Fungsi : untuk menyimpan attribut file log serta file dalam web server
Nama Tipe Ukuran Deskripsi
Id_datafile Bigint 5 Id untuk tabel Datafile Nama Varchar 25 Nama file .log
Size Bigint 10 Ukuran file .log Type Varchar 15 Tipe file .log
IP_Server Varchar 15 IP Server yang akan dianalisis
Nama_database Varchar 15 Nama Database di mana tabel datafile disimpan
40
b. Tabel Disk
Primary Key : Id_Disk
Fungsi : untuk menyimpan attribut disk dari MMC
Nama Tipe Ukuran Deskripsi
Id_disk Bigint 15 Id untuk tabel Disk
Standart_Time Varchar 30 Tanggal dan waktu dilakukan Disk_read_time Varchar 10 Waktu disk dalam keadaan read Disk_time Varchar 10 Waktu disk
Disk_write_time Varchar 10 Wakru disk saat write
Idle time Varchar 10 Waktu disk dalam keadaan idle Avg_disk_sec_read Varchar 10 Rata-rata waktu disk read Avg_disk_sec_write Varchar 10 Rata-rata waktu disk write Disk_bytes_sec Varchar 10 Proses pada disk dengan satuan
bytes/sec Avg_disk_queue_leng
th
Varchar 10 Rata-rata panjang antrian
Avg_disk_bytes_read Varchar 10 Rata-rata melakukan read per byte Avg_disk_bytes_write Varchar 10 Rata-rata melakukan write per byte
c. Tabel Frame
Primary Key : Id
Fungsi : untuk menyimpan data Frame hasil capture dari Ethereal
Nama Tipe Ukuran Deskripsi
Id Bigint 15 Id untuk Frame
Frame_Number Bigint 15 Nomor Frame
Arrival_Time Varchar 20 Waktu Frame di-capture
Date Varchar 20 Tanggal Frame di-capture
41
Nama Tipe Ukuran Deskripsi
Packet_Length Varchar 5 Panjang packet Time_delta_from_previous_p
acket
Varchar 15 Selang waktu Frame n de-ngan Frame
n-1/sebelumnya Time_since_ref_or_first_pac
ket
Varchar 15 Selang waktu Frame n de-ngan Frame pertama
Length Varchar 11 Panjang frame
IP_Source Varchar 15 IP source
IP_Destination Varchar 15 IP destination
MAC_Source Varchar 14 MAC Address Source
MAC_Destination Varchar 17 MAC Address Destination
d. Tabel Memory
Primary Key : Id_memory
Fungsi : untuk menyimpan data memory dari server
Nama Tipe Ukuran Deskripsi
Id_memory Bigint 15 Id untuk tabel Memory Page Faults/sec Varchar 10 Page Faults/sec
Page Read/sec Varchar 10 Page Read/sec Page Write/sec Varchar 10 Page Write/sec Page Input/sec Varchar 10 Page Input/sec Page Output/sec Varchar 10 Page Output/sec Pages/sec Varchar 10 Pages/sec
42
Fungsi : untuk menyimpan data yang dapat disimpan dari attribut NIC server
Nama Tipe Ukuran Deskripsi
Id_nic Bigint 15 Id untuk tabel Network Interface
Bytes Received/sec Varchar 30 Bytes Received/sec Bytes Sent/sec Varchar 30 Bytes Sent/sec Bytes Total/sec Varchar 30 Bytes Total/sec Packets
Received/sec
Varchar 30 Packets Received/sec
Packets Sent/sec Varchar 30 Packets Sent/sec Current Bandwidth Varchar 30 Current Bandwidth
f. Tabel Process
Primary Key : Id_process
Fungsi : untuk menyimpan data process dari server
Nama Tipe Ukuran Deskripsi
Id_process Bigint 5 Id untuk tabel process Creating Process ID Varchar 15 Creating Process ID Elapsed Time Varchar 15 Elapsed Time Handle Count Varchar 15 Handle Count Thread Count Varchar 15 Thread Count
User Time Varchar 15 User Time
Page Faults/sec Varchar 15 Page Faults/sec
g. Tabel Processor
Primary Key : Id_processor
43
Nama Tipe Ukuran Deskripsi
Id_processor Bigint 5 Id untuk tabel processor
DPC Time Varchar 25 DPC Time
Interrupt Time Varchar 10 Interrupt Time Privileged Time Varchar 15 Privileged Time Processor Time Varchar 15 Processor Time
Use Time Varchar 20 Use Time
Interrup/sec Varchar 20 Interrup/sec
h. Tabel Sistem
Primary Key : Id_sistem
Fungsi : untuk menyimpan data sistem dari server
Nama Tipe Ukuran Deskripsi
Id_sistem Bigint 5 Id untuk tabel sistem
Processes Varchar 25 Processes
Threads Varchar 25 Threads
Processor Queue Length Varchar 25 Processor Queue Length File Write Bytes/sec Varchar 25 File Write Bytes/sec File Write
Operations/sec
Varchar 25 File Write Operations/sec
File Read Operations/sec Varchar 25 File Read Operations/sec
i. Tabel Username Primary Key : Id_user
Fungsi : untuk menyimpan username yang dapat melakukan akses
Nama Tipe Ukuran Deskripsi
Id_user Bigint 5 Id untuk username
44
Nama Tipe Ukuran Deskripsi
BAB IV
IMPLEMENTASI DAN EVALUASI
Pada bab ini dibahas tentang tahap implementasi serta evaluasi dari desain dan analisis sistem yang dijabarkan pada bab sebelumnya. Tahap
implementasi menerangkan modul-modul terpenting dari sistem analisis kinerja yang dibuat dengan PHP. Evaluasi dari sistem menjelaskan tentang menu
tampilan dari sistem analisis kinerja level komponen dan protokol jaringan yang dibuat. Tetapi sebelumnya, perlu dijelaskan kondisi lingkungan baik software maupun hardware yang digunakan untuk melakukan evaluasi.
4.1 Spesifikasi Sistem 4.1.1 Spesifikasi Hardware
Hardware yang digunakan untuk melakukan implementasi dan evaluasi mempunyai konfigurasi sebagai berikut :
a. Server dengan spesifikasi teknis sebagai berikut :
i. Processor : Pentium IV. 3,4 GHz ii. Memory : RAM 256 MB
iii. Harddisk : 40 GB
iv. Ethernet : 10/100 MBps
b. Client untuk melakukan perhitungan dan analisis dengan
spesifikasi teknis sebagai berikut :
i. Processor : Pentium III 800 Ghz
ii. Memory : RAM 128 MB
46
iii. Harddisk : 20 GB iv. Ethernet : 10/100 Mbps
4.1.2 Spesifikasi Software
Kebutuhan Software yang diperlukan adalah : a. Sistem Operasi Windows 2000 Profesional
b. Software Ethereal, untuk capture data traffik jaringan.
c. Database MySQL, untuk menyimpan data dalam bentuk tabel.
d. PHP, untuk develop program. e. Microsoft Management Console f. Web Server IIS
g. JpGraph untuk membuat grafik.
h. MySQLFront, untuk front end MySQL.
4.2 Instalasi dan Pengaturan Sistem
Petunjuk instalasi dan pengaturan sistem adalah sebagai berikut :
1. Instalasi dari sistem ini dimulai dengan menginstal IIS sebagai Web
Servernya. IIS secara default ada pada CD installer Windows 2000 ke atas.
47
Instalasi dilakukan dari Menu Start, Control Panel, Add/Remove Program, Add/Remove Windows Component seperti ditunjukkan pada Gambar 4.1.
Secara default IIS akan membuat folder C:/Inetpub/wwroot/.
2. Setelah selesai melakukan instalasi web server, berikutnya adalah menginstal PHP sebagai interpreter scripts. PHP yang digunakan adalah
PHP versi 4.3.10. Konfigurasi detail untuk PHP disediakan pada file php.ini.
3. Untuk membuat tampilah grafik, diinstall tool JPGraph. Yang pertama dilakukan adalah mengaktifkan library gd pada php.ini. Ekstrak file JPGraph dan pindahkan direktori src pada direktori web server (wwwroot).
4. Database yang digunakan adalah MySQL versi 3.23.36. Secara default MySQL akan membuat folder C:/mysql. Data tabel terletak pada folder
C:/mysql/data/[nama database].
5. Instalasi Tool Packet Capture, yang diawali dengan install Winpcap.exe kemudian Ethereal.
6. Untuk memudahkan maintenance database MySQL bisa digunakan PHPMyAdmin atau MySQLfront.
4.3 Implementasi Prosedur
Prosedur yang harus dilakukan untuk implementasi yaitu :
1. Setting log Ethereal seperti ditunjukkan pada Gambar 4.2. Setting Ethereal
ini dilakukan pada server yang akan dihitung kinerjanya. Sistem Analisis Kinerja Level Komponen dan Protokol Jaringan yang dibuat hanya
48
data dari file log ke tabel. Disarankan menggunakan file log dengan ukuran 512 Kbyte.
Gambar 4.2. Setting Ethereal untuk implementasi sistem
2. File log hasil capture dari Ethereal berformat tcpdump dan binary sehingga tidak bisa dibaca dengan teks editor. Untuk menghindari hal tersebut,
Ethereal menyediakan menu untuk Export file hasil .log ethereal ke plain text, seperti tampak pada Gambar 4.3
49
3. Setting file log pada MMC dengan membuka file .msc yang telah ditentukan (ada pada CD dalam buku ini), seperti tampak pada Gambar
4.4. Sistem Analisis Kinerja Level Komponen dan Protokol Jaringan Komputer ini hanya mampu memindahkan file log ke tabel dengan ukuran file maksimum 1 Mbyte. Disarankan menggunakan log file dengan ukuran
512 KByte.
Gambar 4.4. Open file .msc dari MMC
4. Data dari file log Ethereal yang dimasukkan ke sistem adalah file hasil ekspor ke plain text dengan ekstensi .txt. Sedangkan file log MMC yang
digunakan berekstensi .csv, didapatkan langsung dari file log MMC.
4.4 Implementasi Sistem
50
4.4.1 Upload File
Untuk menyimpan file ke web server dan attribut file ke tabel datafile
digunakan function PHP. Modul ini menerima inputan berupa file, yang kemudian dipindahkan ke folder tertentu dalam web server, serta menyimpan nama file, ukuran file, tipe file ke tabel datafile. Gambar 4.5 menunjukkan modul untuk
upload file tersebut. Detail lengkap modul ini ada pada lampiran dengan nama file input_log2.php.
< ?php
$uploaddir = 'c:/ inetpub/ wwwroot/ final/ uploads/ '; / / folder tempat file disimpan pada web server.
$uploadfile = $uploaddir.basename($_FI LES[ 'userfile'] [ 'name'] ); / / nama file
/ / proses pemindahan file
if (move_uploaded_file($_FI LES[ 'userfile'] [ 'tmp_name'] , $uploadfile)) { echo "File is valid, and was successfully uploaded.\ n";
} else {
echo "Possible file upload attack!\ n"; }
$a = $_FI LES[ 'userfile'] [ 'name'] ; $b = $_FI LES[ 'userfile'] [ 'size'] ; $c = $_FI LES[ 'userfile'] [ 'type'] ;
if (preg_match ("/ .txt/ i", $a)) $log= "Ethereal"; else
$log= "MMC";
/ / memasukkan attribut file ke database
$dbQuery = "insert into datafile (id_datafile,nama, size, type, Jenis_log) values ($id_datafile,'$a',$b,'$c','$log')";
mysql_query($dbQuery) or die("Couldn't add file to database Q1"); ?>
51
4.4.2 Interface Ethereal ke Database
Modul ini digunakan untuk memindahkan file hasil log Ethereal yang
tidak beraturan ke database agar mudah untuk dilakukan perhitungan. Modul ini dimulai dengan membuka file, kemudian membaca tiap baris berurutan dari baris pertama sampai terakhir. Pada proses pembacaan baris tersebut dilakukan pula
proses pencocokan, jika sesuai akan ditandai untuk dimasukkan ke tabel Frame. Pencocokan data dilakukan untuk mencari attribut no frame, waktu dilakukan
capture, jenis protokol, ukuran packet, IP source, IP destination, MAC source, MAC destination, selang waktu antar packet. Sebagian isi modul ditunjukkan pada Gambar 4.6. Detail lengkap modul ini ada pada lampiran dengan nama file
input_frame.php
$datafile= "C:/ I netpub/ wwwroot/ final/ uploads/ ".$_GET[ "a"] ; $fp = fopen ($datafile,"r");
while ($data = fgetcsv ($fp, 10000, "\ t \ t \ t")) { $num = count($data);
for ($c= 0; $c < $num; $c+ + ) {
if (preg_match ("/ Arrival Time/ i", $data[ $c] )) {
$waktu = explode(" ",$data[ $c] );
$tanggal = $waktu[ 2] ." ".$waktu[ 3] ." ".$waktu[ 4] ;
/ / cari tanggal 1 digit dan 2 digit if (preg_match ("/ ,/ i", $tanggal))
{
$tanggal= explode(",",$tanggal); $tanggal= $tanggal[ 0] ;
print "Tanggal = ". $tanggal. "< br> \ n"; / / / Tanggal
52
4.4.3 Interface MMC ke Database
Hampir sama dengan modul sebelumnya, modul ini digunakan untuk
memindahkan file log MMC yang tidak beraturan untuk dipindahkan ke tabel-tabel yang telah disediakan. Isi modul ini adalah perintah untuk membaca file .csv kemudian melewati proses pemilihan field mana yang dipilih dan dimasukkan ke
tabel. Sebagian isi dari modul ini tampak pada Gambar 4.7. Detail lengkap modul ini ada pada lampiran dengan nama file input_MMC.php
$datafile= "C:/ I netpub/ wwwroot/ final/ uploads/ ".$_GET[ "a"] ; $fp = fopen ($datafile,"r");
while ($data = fgetcsv ($fp, 10000, "\ t \ t \ t")) {
$committed_bytes_in_use = $pieces[ 1] ; $available_bytes = $pieces[ 2] ;
$available_kbytes = $pieces[ 3] ; $available_mbytes = $pieces[ 4] ; $cache_bytes = $pieces[ 5] ; $cache_bytes_peak = $pieces[ 6] ;
$dbQuery = "insert into memory values (0,'$waktu',' $committed_bytes_in_use','$available_bytes','$available_kbytes','$available_mbyt
mysql_query($dbQuery) or die("Couldn't add file to database Q1");
53
4.4.4 Perhitungan per Komponen
Modul ini berfungsi untuk melakukan perhitungan dari kinerja level
komponen yang menggunakan metode Perfomance Modelling Concepts. Perhitungan dengan cara Little’s Law, Forced Flow Law dan Utilization Law seperti ditunjukkan pada Gambar 4.8. Detail lengkap modul ini ada pada lampiran
dengan nama file MMC.php
/ / Little’s Law
$response_time_litte = $total_waiting_time/ $jumlah_task_selesai; $task_server = $total_waiting_time/ $total_waktu;
$throughput_little = $jumlah_task_selesai/ $total_waktu …
/ / Forced Flow Law
$task_per_transaksi = $jumlah_task_selesai/ $jumlah_transaksi_selesai; $avg_transaksi = $jumlah_transaksi_selesai/ $total_waktu;
$throughput_forced = $jumlah_task_selesai/ $total_waktu; …
/ / Utilization Law
$service time = $waktu_sibuk/ $jumlah_task_selesai;
throughput_utilization = $total_waktu/ $jumlah_task_selesai; $utilization = $jumlah_task_selesai/ $total_waktu;
Gambar 4.8. Sebagian Modul untuk menghitung per komponen
4.4.5 Perhitungan per Protokol
Modul perhitungan per protokol digunakan untuk menghitung attribut
protokol. Dimulai dengan menghitung jumlah secara keseluruhan ukuran frame yang lewat, kemudian dibedakan antara frame yang menuju server (received) dan
54
dilihat pada Gambar 4.9. Detail lengkap modul ini ada pada lampiran dengan nama file ethereal.php
$result = mysql_query("select * from frame") or die ("I nvalid Query");
while ($row = mysql_fetch_row($result)) {
$jumlah_row_frame = $jumlah_row_frame + 1;
$bytes_packet_frame = $bytes_packet_frame + $row[ 5] ; $total_waktu_frame = $total_waktu_frame + $row[ 6] ;
if($row[ 9] = = $capex){
$bytes_packets_frame_sent = $bytes_packets_frame_sent + $row[ 5] ; $jumlah_row_frame_sent = $jumlah_row_frame_sent + 1;
}
if($row[ 10] = = $capex){
$bytes_packets_frame_sent= $bytes_packets_frame_received + $row[ 5] ; $jumlah_row_frame_received = $jumlah_row_frame_received + 1; }
if ($row[ 4] = = 'TCP') {
$jumlah_row_tcp = $jumlah_row_tcp + 1;
$bytes_packet_tcp = $bytes_packet_tcp + $row[ 5] ; $total_waktu_tcp = $total_waktu_tcp + $row[ 6] ;
if($row[ 9] = = $capex){
$bytes_packets_tcp_sent = $bytes_packets_tcp_sent + $row[ 5] ; $jumlah_row_tcp_sent = $jumlah_row_tcp_sent + 1;
}
Gambar 4.9. Sebagian Modul untuk menghitung per protokol
4.4.6 Perhitungan per komponen per protokol
Modul terakhir yang akan dibahas adalah perhitungan per komponen per protokol. Modul ini mendapat input berupa modul perhitungan per komponen dan
55
perhitungan per protokol. Potongan program tersebut, seperti tampak pada Gambar 4.10. Detail lengkap modul ini ada pada lampiran dengan nama file
analisis.php.
$service_time = $total_bytes/ $total_waktu; < tr>
< td> < b> Processor< / b> < / td> < td> < ?print
bcpow(($total_waktu_sibuk/ $jumlah_task_selesai),1,6);?> < / td> < td> < ?print
bcpow((($total_waktu_sibuk/ $total_waktu)* 100),1,6);?> < / td> < td> < ? print bcpow($residence_time_cpu,1,6);?> < / td> < / tr>
< tr>
< td> TCP Sent< / td>
< td> < ?print bcpow( (($total_waktu_sibuk/ $jumlah_task_selesai) * ($total_waktu_tcp_sent/ $total_waktu_frame)/ $jumlah_row_tcp_sent) * 1000000,1,6);?> < / td>
< td> < ?print bcpow(((($total_waktu_sibuk/ $total_waktu)* 100)* ($total_waktu_tcp_sent/ $total_waktu_frame)/ $jumlah_row_tcp_sent)*
1000000,1,6);?> < / td>
< td> < ? print bcpow(($residence_time_cpu* ($total_waktu_tcp_sent/ $total_waktu_frame)/ $jumlah_row_tcp_sent)* 1000000,1,6);?> < / td> < / tr>
Gambar 4.10. Sebagian modul perhitungan per komponen per protokol
4.5 Evaluasi Sistem
Sistem ini dimulai dengan halaman login, untuk mempermudah identifikasi user yang melakukan akses terhadap sistem ini. Menu Login seperti
56
Gambar 4.11. Menu Login
Setelah verifikasi user dan password, akan terdapat menu seperti
ditunjukkan pada Gambar 4.12.
Gambar 4.12. Menu utama dan pilihan sub menu
Beberapa Menu yang tampak pada Gambar 4.12 adalah Input File log,
57
Logout. Susunan Menu dibuat secara horizontal, karena tingkatan menu adalah sejajar.
Menu Input File log digunakan untuk menginputkan hasil file log dari MMC ataupun Ethereal ke dalam sistem untuk disimpan, seperti ditunjukkan pada Gambar 4.13.
Gambar 4.13. Menu Input File log
Menu Input File log tersebut akan menyimpan file ke dalam web server pada folder yang telah ditentukan. Jika file sukses di upload, maka pesan yang
akan ditampilkan ditunjukkan pada Gambar 4.14. Dari Gambar, dapat diketahui bahwa file telah sukses diupload. Informasi lain dari halaman ini, nama file dalam web server adalah mmc_000045.csv, sebelum dipindahkan ke web server untuk
sementara file akan disimpan dulu di C:/PHP/uploadtemp/. Ukuran file MMC yang telah diupload adalah 524492 bytes atau 513,8 Kbyte. Untuk kemudahan
58
Gambar 4.14. Pesan yang ditampilkan jika file sukses di upload
File hasil upload yang disimpan pada web server selanjutkan akan digunakan sebagai input dari Sistem Analisis Kinerja Level Komponen dan Protokol Jaringan. Untuk mengetahui file apa saya yang telah ada di web server
59
Gambar 4.15. Menu Rekap File .log
Untuk memasukkan file log ke dalam tabel dapat dilakukan pada menu rekap file, dengan cara klik pada Input Frame untuk file log Ethereal dan klik input Server untuk file log MMC. Jika dalam kolom Frame dan Server tertulis
OK, maka menu tersebut tidak dapat dipilih, artinya dalam saru baris hanya terdapat satu menu Input dan satu menu OK. Pada menu rekap file log ini dapat
60
Gambar 4.16.Isi file Ethereal
Isi dari file ethereal akan diolah oleh interface 1 untuk selanjutnya
dimasukkan ke dalam Tabel Frame. Tabel Frame tersebut digunakan untuk menghitung kinerja per protokol jaringan. File MMC dipindahkan ke beberapa
tabel, yaitu : disk, memory, process, processor dan sistem. File MMC dipindahkan oleh Interface 2. Tabel-tabel tersebut akan digunakan untuk menghitung kinerja pada level komponen.
Sent Total Bytes Received Total Bytes size/frameAvg
61
Sent Total Bytes Received Total Bytes size/frameAvg
Avg
Gambar 4.17. Contoh analisis Ethereal
Hasil Analisis dari file log Ethereal berupa data rekapitulasi protokol jaringan dalam melakukan proses terhadap frame yang datang. Contoh hasil rekap
ditunjukkan pada Gambar 4.17, jumlah data yang digunakan sebanyak 83824 frame/record. Dari hasil analisis tersebut, dapat diketahui bahwa frame yang
mempunyai ukuran rata-rata terbesar adalah protokol HTTP dengan 1393 bytes atau 1,36 Kbyte. Frame yang mempunyai ukuran rata-rata terkecil adalah frame dengan protokol ARP yaitu sebesar 56,9 bytes, urutan berikutnya STP dan EIGRP
yang masing-masing sebesar 60 bytes dan 74 byes.
Jumlah frame terbesar adalah HTTP sebanyak 24956 atau sebesar hampir
30% dari seluruh frame yang ter-capture. Jumlah frame terkecil adalah ARP sebanyak 367 atau sebesar 0,4 %.
Jumlah keseluruhan ukuran bytes pada protokol HTTP mencapai 34772
Kbyte atau sebesar 87% dari keseluruhan jumlah byte frame, sedangkan jumlah terkecil adalah ARP dengan 20 Kbyte atau sebesar 0,05%.
62
jumlah frame dapat disimpulkan bahwa ukuran frame HTTP sangat besar tetapi diperlukan waktu tercepat untuk mengolahnya.
Menu Analisis MMC berupa data hasil perhitungan dari tabel disk, processor, memory, sistem dan process. Perhitungan ini didasarkan pada metode Performance Modelling Concepts.
PROCESSOR
Rata-rata Service Time (S=B/C) 0.14816 Troughput (X = C/T) 0.19630 Utilization of Server (U = B/T) 2.908 %
Little's Law
Rata-rata response time (R = W/C) 0.14816 Rata-rata Jumlah task pada server (n=W/T) 6.74908 Troughput Server (X=C/T) 0.19630
Forced Flow Law Visit Ratio Server (V(i) = C(i)/C(0)) 19.43220 System Troughput (X(0)=C(0)/T) 0.01010 Server Troughput (X(i) = C(i)/T) 0.19630
Gambar 4.18. Hasil Perhitungan MMC untuk processor
Hasil perhitungan processor ditunjukkan pada Gambar 4.18. Dari Gambar ditunjukkan bahwa analisis processor dibedakan sesuai dengan hukum yang digunakan dalam perhitungan ini, yaitu : Little’s Law, Forced Flow Law dan
Utilization Law. Tidak semua perhitungan disini digunakan pada analisis residence time, hanya informasi dari hasil capture data MMC.
63
pada disk dan incoming/outgoing link. Hasil perhitungan ini, tidak dibedakan berdasarkan metode Performance Modelling Concepts.
PHYSICAL DISK
Waktu Sibuk (B) 120672 sec Waktu Idle 3368548 sec
Rata rata file di retrieve /sec 4206.5124478958 byte Request/sec 0.00733740649803 Kapasitas Disk C 42,35 %
Kapasitas Disk D 57,64 %
INCOMING/OUTGOING LINK
Avg Bytes yang di receive/sec 73.834608576486 byte Avg Bytes yang di sent/sec 1031.325586707 byte Avg Bytes dieksekusi / sec 1105.5623536801 byte Current Bandwidth 2000000 bps
Total Bytes 38723427 byte Service time per byte 1105.02063298 sec Service Demand Incoming Link 0.000295338434306 sec Service Demand Outgoing Link 0.00412530234683 sec Utilization Incoming Link 0.326515054563 % Utilization Outgoing Link 4.5607789722 %
Gambar 4.19 Hasil perhitungan MMC untuk disk dan incoming/outgoing link
Menu berikutnya adalah Hasil Analisis per komponen per protokol.
Analisis ini diperoleh dari dua perhitungan sebelumnya yaitu perhitungan per komponen dan perhitungan per protokol. Contoh hasil analisis tersebut ditunjukkan pada Gambar 4.20 dengan level komponen incoming link dan
processor.
Processor 1.477173 2.908553 1.521424
64
Resources(Protokol)
Service Demand(µ
sec)
Utilization(%) Residence Time(µ sec)
ARP Received 0.526648 1.036971 0.542425 EIGRP Sent 0 0 0 EIGRP Received 0 0 0 STP Sent 43.451585 85.556167 44.753258 STP Received 26.989058 53.141452 27.797565 HTTP Sent 0.242498 0.477479 0.249763 HTTP Received 4.639701 9.135572 4.778692 Others Sent 22.629485 44.557454 23.307393 Others Received 15.245370 30.018132 15.702073
Gambar 4.20.Analisis per komponen per protokol
Analisis Kinerja Level Komponen dan Protokol Jaringan juga disajikan
dengan grafik batang/histogram. Gambar 4.21 adalah grafik untuk perhitungan Residence Time pada level komponen Physical Disk.
Gambar 4.21. Grafik residence time pada level komponen Physical Disk
Dari Gambar 4.21, diketahui bahwa jenis protokol yang memerlukan waktu terlama untuk diolah oleh komponen Disk adalah Spanning Tree Protokol
65
µsec untuk frame yang keluar dari server. Jenis protokol yang memerlukan waktu tercepat diolah oleh komponen physical disk adalah TCP yang hampir mendekati
nilai 20 µsec untuk frame yang keluar dari server.
Pengukuran residence time pada processor/CPU seperti tampak pada Gambar 4.22, yang menunjukkan bahwa protokol UDP merupakan protokol yang
paling lama diproses oleh komponen processor sebesar 37,2 µsec untuk frame
yang keluar dari server dan 5,7 µsec untuk frame yang masuk ke server.
Sedangkan untuk STP memerlukan waktu untuk memproses frame yang masuk ke
server selama 27,9 µsec dan 4,5 µsec untuk frame yang keluar dari server.
66
Gambar 4.23 Grafik residence time pada level komponen incoming link
Gambar 4.23 adalah grafik residence time pada level komponen
incoming link. Dari Gambar tersebut disimpulkan bahwa waktu yang diperlukan untuk memproses protokol yang paling lama adalah STP pada frame yang keluar
dari server sebesar 98,5 µsec dan 1,2 µsec untuk frame yang masuk ke server.
Pemrosesan terlama juga terjadi pada protokol UDP untuk frame yang keluar dari
server selama 94,3 µsec dan hampir 0,0 µsec untuk frame yang masuk ke server.
Gambar 4.24 menampilan grafik residence time pada level komponen outgoing link. Dari gambar tersebut dapat disimpulkan bahwa protokol STP
memerlukan waktu rata-rata untuk diproses oleh komponen outgoing link sebesar 1438,1 µsec untuk frame yang keluar dari server menyusul kemudian frame UDP