• Tidak ada hasil yang ditemukan

Tampilan Pemakaian Bandwidth Dari CC-Cutter Berbasis Web.

N/A
N/A
Protected

Academic year: 2017

Membagikan "Tampilan Pemakaian Bandwidth Dari CC-Cutter Berbasis Web."

Copied!
37
0
0

Teks penuh

(1)

Tampilan Pemakaian Bandwidth dari CC - Cutter Berbasis Web

Evan Satria Indrawila 0122112

Jurusan Teknik Elektro, Fakultas Teknik, Universitas Kristen Maranatha Jalan Prof. Drg. Suria Sumantri 65

Bandung 40164, Indonesia Email: satriaevan@yahoo.com

ABSTRAK

Penggunaan akses internet secara massal seperti di perkantoran, warnet dan tempat lainnya akan mengakibatkan turunnya performansi jaringan seiring dengan peningkatan jumlah penggunanya. Apalagi jika bandwidth yang ada tidak dikelola sebaik mungkin.

CC-Cutter atau Cyber Cost Cutter merupakan alat untuk mengontrol

penggunaan bandwidth internet, sehingga pemakaian bandwidthnya tidak akan melebihi jatah akses yang sudah ditentukan.

Dalam Tugas Akhir ini, akan direalisasikan perangkat lunak untuk menampilkan data rata-rata pemakaian bandwidth dari CC-Cutter dalam bentuk halaman web, agar users dapat dengan mudah memonitor pemakaian bandwidth. CC- Cutter yang digunakan adalah CCT – 063 (kapasitas 63 users). Konfigurasi sistemnya adalah menghubungkan modul CC – Cutter ke PC Server melalui port serial. Modul CC – Cutter akan mengirimkan data bandwidth setiap 5 menit sekali. Program aplikasi menggunakan bahasa C yang berfungsi untuk mengubah dan menyimpan data serial ke database dalam MySQL. Aplikasi web dibuat menggunakan Php berfungsi mengambil data dari database MySQL dan menampilkannya dalam halaman web.

Dari hasil percobaan aplikasi berbasis web untuk menampilkan data bandwidth berjalan dengan baik. Pengujian yang dilakukan sebanyak 10 kali menunjukkan tingkat keberhasilan 100 %, sesuai dengan rancangan.

(2)

Web Based Display of Bandwidth Usage from CC-Cutter

Evan Satria Indrawila 0122112

Jurusan Teknik Elektro, Fakultas Teknik, Universitas Kristen Maranatha Jalan Prof. Drg. Suria Sumantri 65

Bandung 40164, Indonesia Email: satriaevan@yahoo.com

ABSTRACT

Internet acces in offices, cybercafes and other facilities causes the decrease of network performance in line with the increase network of users. Moreover, if the bandwidth is not managed as best as possible.

CC-Cutter or Cyber Cost Cutter is a tool to control a bandwidth usage of the internet, so that the usage of a bandwidth does not exceed the limit deter-mined.

In this Final Project, will be realized a software to display the usage aver-age bandwidth data of CC-Cutter in the form of a web paver-age, so users can easily monitor the bandwidth usage. CC-Cutter that used is CCT - 063 (capacity of 63 users). The configuration system is connecting the CC – Cutter module to the PC Server via serial port. Module CC - Cutter will send the data bandwidth every 5 minutes. The program application used is the C language, will change and save the serial data into a database in MySQL. Web application use Php will retrieve data from MySQL database and display it in a web page.

From the results of experiment web-based application to display the bandwidth data is running well. Testing was done as many as 10 times and it showed a 100% results as per the hypotheses.

(3)

DAFTAR ISI

LEMBAR PENGESAHAN SURAT PERNYATAAN

ABSTRAK... i

ABSTRACT...ii

KATA PENGANTAR……… iii

DAFTAR ISI... v

LAMPIRAN...vii

DAFTAR TABEL...viii

DAFTAR GAMBAR ...ix

BAB I PENDAHULUAN ...1

I.1 Latar Belakang ...1

I.2 Identifikasi Masalah...2

I.3 Tujuan ...2

I.4 Pembatasan Masalah ...2

I.5 Sistematika Pembahasan...3

BAB II LANDASAN TEORI ...4

II.1 Sistem Operasi Linux ...4

II.2 Cyber Cost Cutter (CC-Cutter) ...5

II.3 Komunikasi Data ...8

II.3.1 Komunikasi Data Serial Asinkron ...9

II.3.2 Metoda Hubungan Komunikasi...10

II.4 Antarmuka RS 232 ...10

II.5 OSI Layer ...13

II.6 Pemrograman C ...15

II.7 HTML...16

II.8 PHP...17

(4)

II.10 MySQL ...19

BAB III PERANCANGAN DAN REALISASI ...20

III.1 Antarmuka CC - Cutter dengan PC Server ...21

III.2 Blok CC - Cutter ...24

III.3 Blok Dalam Halaman Web ...28

BAB IV UJI COBA DAN ANALISA DATA ...29

IV.1 Pengiriman Data Serial ...29

IV.2 Tampilan Pada Database ...29

IV.2.1 Database Master Data ...30

IV.2.2 Database Detail Data ...31

IV.3 Tampilan Pada Web ...32

BAB V KESIMPULAN DAN SARAN ………...35

V.1 Kesimpulan ...35

V.2 Saran...35

(5)

LAMPIRAN LAMPIRAN A

Data Pengamatan... A-1 LAMPIRAN B

Listing Program pada Linux... B-1 LAMPIRAN C

(6)

DAFTAR TABEL

Tabel III.1 Master Data ...26

Tabel III.2 Detail Data ...27

Tabel IV.1 Master Data Hasil Pengujian...30

(7)

DAFTAR GAMBAR

Gambar II.1 Alat CC - Cutter...5

Gambar II.2 Aplikasi Penggunaan CC - Cutter...8

Gambar II.3 Format Data Serial Asinkron... 9

Gambar II.4 Hubungan DTE-DTE Zero Modem Link ...11

Gambar II.5 Four Wire DTE-DTE 1 Link... 12

Gambar II.6 Model Layer 7 OSI... 14

Gambar II.7 Alur Data melewati OSI 7 Layer... 15

Gambar III.1 Aplikasi penggunaan CC - Cutter yang dihubungkan dengan PC Server... 20

Gambar III.2 Diagram Alir Antarmuka Serial... 22

Gambar III.3 Diagram Alir Web... 23

Gambar III.4 Tampilan Web... 28

Gambar IV.1 Database Master Data MySQL... 30

Gambar IV.2 Database Detail Data MySQL... 31

Gambar IV.3 Tampilan Web ...33

(8)

LAMPIRAN A

(9)

Lampiran

Data Pengamatan untuk Master Data

Kode Tanggal Up_User Dn_User Up_Inter Dn_Inter

1 2008-12-16 10:52:20 56 45 12 15

2 2008-12-16 10:57:20 53 32 27 47

3 2008-12-17 09:20:13 43 34 38 34

4 2008-12-17 14:06:29 51 33 31 49

5 2008-12-18 10:11:29 40 13 11 38

6 2008-12-18 13:20:22 37 19 16 35

7 2008-12-18 13:25:22 38 22 16 30

8 2008-12-18 13:30:22 41 15 14 36

9 2008-12-18 13:35:22 31 11 6 20

(10)

Lampiran

Data Pengamatan untuk Detail Data

(11)
(12)

Lampiran

(13)

Lampiran

(14)

Lampiran

Tampilan web untuk data pengamatan ke 4

(15)

Lampiran

(16)

Lampiran

Tampilan web untuk data pengamatan ke 7

(17)

Lampiran

Tampilan web untuk data pengamatan ke 9

(18)

LAMPIRAN B

Listing Program

(19)

Lampiran

Listing Program pada Linux

Pemrograman C

#define BAUDRATE B115200

#define MODEMDEVICE "/dev/ttyS0"

#define _POSIX_SOURCE 1 /* POSIX compliant source */ #define FALSE 0

#define TRUE 1

volatile int STOP=FALSE;

void signal_handler_IO(int status); int wait_flag=TRUE;

struct termios oldtio,newtio; struct sigaction saio;

int get_serial_data(); char buf[255];

struct cldata { char nama[17];

unsigned long oedl,oeul,uedl,ueul;

int get_serial_data(); int sqlconvert();

int get_serial_data()

{

(20)

Lampiran

fd=open(MODEMDEVICE, O_RDWR | O_NOCTTY | O_NONBLOCK);

if (fd<0) {

perror(MODEMDEVICE);

exit (-1);

newtio.c_cflag = BAUDRATE | CS8 | CLOCAL | CREAD; newtio.c_iflag = IGNPAR | ICRNL;

tcsetattr(fd,TCSANOW,&newtio);

while (STOP==FALSE) { usleep{5000);

if (ccdata[0]==#00 && ccdata[1]==#cc) {

/* restore old port settings */ tcsetattr(fd,TCSANOW,&oldtio);

return 0;

(21)

Lampiran

void signal_handler_IO (int status) {

wait_flag = FALSE; }

int sqlconvert() {

MYSQL *mysql;char query[1000];int i;

char ip[16];

mysql=mysql_init(NULL);i=0; if(mysql==NULL)

{

fprintf(stderr,"\n Koneksi MySQL error");

return -1;

fprintf(stderr,"\n Koneksi ke database error");

return -1;

}

query="INSERT INTO t_mdata VALUES

(0,"+tanggal+","+oedl+","+oeul+","+uedl+","ueul+")";

if(!mysql_query(mysql,query)==0) {

printf( "Failed to add records: Error: %s\n",

query="INSERT INTO t_ddata VALUES

(0+",i+","+cldata[i].nama+","+ip+","+cldata.intraul+"," +cldata.intradl+","+cldata.interul+","cldata.interdl+") ";

if(!mysql_query(mysql,query)==0) {

(22)

Lampiran

<title> Quasar CC Cutter</title>

<link href="./images/style.css" rel="stylesheet" type="text/css">

<script src="./images/functions.js"

language="javascript" type="text/javascript"></script> </head>

<body onload ="auto_reload()"><form name="dataform" method="post">

<div id="banner"><img src="./images/logo.jpg" height="100"></div>

<div id="dated"> <?php echo date("l j-m-Y G:i A") ?></div>

<div id="headers"> <?php

require_once ("functions.php"); $db=db_connect();

$id=mysql_escape_string($_GET['id']);

if ($id)

$query_str = "SELECT * FROM t_mdata WHERE kode=$id ORDER BY kode DESC LIMIT 1";

else

$query_str = "SELECT * FROM t_mdata ORDER BY kode DESC LIMIT 1";

$queries = mysql_query ($query_str) or die (mysql_error());

$data_head = mysql_fetch_array ($queries); ?>

<table width="700" border="1"> <tr>

<th class="whitehdr">&nbsp;</th>

<th class="whitehdr">Average Uplink</th> <th class="whitehdr">Average Downlink</th> </tr>

<tr>

<td>Outside</td>

(23)

Lampiran

<tr>

<td>User</td>

<td align="right"><?php echo $data_head['up_user'];?></td> <td align="right"><?php echo $data_head['dn_user'];?>&nbsp;</td> </tr>

<input type="hidden" name="check" value="<?php echo $data_head['kode'];?>">

</table> </div>

<H3>Log date : <?php echo $data_head['tanggal']; ?></H3>

<BR>

<input type="button" name="SearchMaster" value="Search Log" onClick="goto_Master()">

<div id="content">

<table width="750" border="1"> <tr bgcolor="#CCCCCC">

<th width="20%" class="whitehdr">Name</th> <th width="20%" class="whitehdr">IP</th>

<th width="15%" class="whitehdr">Internet Avg Downlink </th>

<th width="15%" class="whitehdr">Internet Avg Uplink</th>

<th width="15%" class="whitehdr">Intranet Avg Downlink</th>

<th width="15%" class="whitehdr">Intranet Avg Uplink</th>

</tr> <?php

$kode=$data_head['kode'];

$query_str = "SELECT * FROM t_ddata WHERE kode=$kode";

$sorts=mysql_escape_string($_POST['Sort']); switch (trim($sorts)) {

case 'namauser':$query_str.=' ORDER BY nama';

break;

case 'ip':$query_str.=' ORDER BY ip';

break;

case 'interdn':$query_str.=' ORDER BY dn_inter DESC';

break;

case 'interup':$query_str.=' ORDER BY up_inter DESC';

break;

case 'intradn':$query_str.=' ORDER BY dn_intra DESC';

(24)

Lampiran

case 'intraup':$query_str.=' ORDER BY up_intra DESC';

}

$nmsearch=mysql_escape_string($_POST['searchname'] );

if ($nmsearch) {

$query_str= "SELECT * FROM t_ddata WHERE kode=$kode AND nama LIKE'%$nmsearch"."%'";

}

$ipsearch=mysql_escape_string($_POST['searchip']); if ($ipsearch) {

$query_str= "SELECT * FROM t_ddata WHERE kode=$kode AND ip LIKE'$ipsearch"."%'";

}

$queries = mysql_query ($query_str) or die (mysql_error());

while ($content = mysql_fetch_array ($queries)) { echo '<tr class="boldtype">'."\n";

echo "<td>".$content['nama']."</td>\n"; echo "<td>".$content['ip']."</td>\n";

echo "<td>".$content['dn_inter']."</td>\n"; echo "<td>".$content['up_inter']."</td>\n"; echo "<td>".$content['dn_intra']."</td>\n"; echo "<td>".$content['up_intra']."</td>\n"; echo "</tr>\n";

<table width="600" border="0"> <tr>

<td><H2>Search</H2></td> <td>User:</td>

<td><input type="text" name="searchname"></td> <td> IP:</td>

<td><input type="text" name="searchip"></td> <td><input type="submit" name="Search"

value="Search"></td> </tr>

</table> </div>

(25)

Lampiran

(26)

Lampiran

font-family: Arial, Helvetica, sans-serif;

font-size: medium;

padding-left: 50px;

margin-bottom :20px;

}

#content {

background-color: #800000;

color: #FFFFFF;

background-color: #FF9900;

color: #FFFFFF;

padding-left: 50px;

(27)

Lampiran

body {

background-color: #99CCCC;

}

Listing hist.php

<html>

<head>

<title> Quasar CC Cutter</title>

<link href="./images/style.css" rel="stylesheet" type="text/css">

</head>

<body>

<div id="banner"><img src="./images/logo.jpg" height="100"></div>

<div id="dated"> <?php echo date("l j-m-Y G:i A") ?></div>

<div id="headers"><form name="dataform" method="post"> <?php $dtanggal='0'.$dtanggal;

$tanggal.="<option value=\"$dtanggal\" "; if ($dtanggal==date("j"))

$tanggal.='selected="selected"'; $tanggal.=">$dtanggal</option>\n"; }

$bulan[$i]='selected="selected"'; break;

} }

$tahunini = date('Y', time());

for ($i=$tahunini-90;$i<=$tahunini;$i++) {

$tahun.="<option value=\"$i\" "; if ($i==$tahunini) {

(28)

Lampiran

}

$tahun.=">$i</option>\n"; }

?>

Tanggal Pencarian : <select name="tgl" id="tgl"> <?php echo $tanggal ?>

</select>

- <span class="row2">

<select name="bln" id="bln">

<option label="Jan" value="01" <?php echo $bulan[1] ?>>01</option>

<option label="Feb" value="02" <?php echo $bulan[2] ?>>02</option>

<option label="Mar" value="03" <?php echo $bulan[3] ?>>03</option>

<option label="Apr" value="04" <?php echo $bulan[4] ?>>04</option>

<option label="Mei" value="05" <?php echo $bulan[5] ?>>05</option>

<option label="Jun" value="06" <?php echo $bulan[6] ?>>06</option>

<option label="Jul" value="07" <?php echo $bulan[7] ?>>07</option>

<option label="Aug" value="08" <?php echo $bulan[8] ?>>08</option>

<option label="Sep" value="09" <?php echo $bulan[9] ?>>09</option>

<option label="Okt" value="10" <?php echo $bulan[10] ?>>10</option>

<option label="Nov" value="11" <?php echo $bulan[11] ?>>11</option>

<option label="Des" value="12" <?php echo $bulan[12] ?>>12</option>

</select>

-</span><span class="row2"> <select name="thn" id="thn">

<?php echo $tahun ?>

</select> <input type="submit" name="SearchBtn" value="Cari"></form>

<table width="500" border="1"> <tr>

<th class="whitehdr">Kode</th> <th class="whitehdr">Tanggal</th> </tr>

<?php

(29)

Lampiran

$query_str = "SELECT kode,tanggal FROM t_mdata WHERE tanggal BETWEEN '$tanggalsr1' AND '$tanggalsr2' ORDER BY kode";

$queries = mysql_query ($query_str) or die (mysql_error());

while ($content = mysql_fetch_array ($queries)) { echo "<tr>\n";

$database = "cccutter"; $host = "127.0.0.1"; $username = "root"; $pass = "";

$result = mysql_connect($host,$username,$pass);

try {

if (!$result) {

$exceptss = "Error connecting to MySQL database";

throw new exception ($exceptss);

} else {

(30)

Lampiran

} ?>

Listing functions.js

function auto_reload() {

window.setTimeout("goto_Index",5*60*1000); }

function goto_Master() {

location.href="hist.php"; }

function goto_Index() {

location.href="index.php"; }

Listing program database.sql

CREATE TABLE `t_ddata` ( `kode` int(11) NOT NULL, `nomer` tinyint(4) NOT NULL,

`nama` varchar(25) collate latin1_general_ci NOT NULL,

`ip` varchar(15) collate latin1_general_ci NOT NULL, `up_intra` float NOT NULL,

`dn_intra` float NOT NULL, `up_inter` float NOT NULL, `dn_inter` float NOT NULL, PRIMARY KEY (`kode`,`nomer`)

) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;

CREATE TABLE `t_mdata` (

`kode` int(11) NOT NULL auto_increment, `tanggal` datetime NOT NULL,

`up_user` float NOT NULL, `dn_user` float NOT NULL, `up_inter` float NOT NULL, `dn_inter` float NOT NULL, PRIMARY KEY (`kode`)

) ENGINE=MyISAM DEFAULT CHARSET=latin1

(31)

LAMPIRAN C

(32)
(33)

BAB I

PENDAHULUAN

I.1 Latar Belakang

Layanan komunikasi data telah menjadi sangat penting dalam kehidupan sehari-hari. Hampir di setiap bidang kehidupan telah mengadopsi layanan ini. Layanan ini pun tidak hanya digunakan secara individual tetapi juga digunakan secara masal.

Banyak sekali organisasi atau lembaga yang menggunakan akses internetnya secara masal. Lembaga pendidikan, perkantoran, warnet, dan masih banyak lagi lembaga-lembaga lainnya yang menggunakan akses internetnya secara masal. Penggunaan akses internet secara masal ini akan mengakibatkan turunnya performansi jaringan seiring dengan peningkatan jumlah penggunanya. Apalagi jika bandwidth yang ada tidak dikelola sebaik mungkin.

CC-Cutter atau Cyber Cost Cutter merupakan alat untuk mengontrol

(34)

Bab I Pendahuluan 2

Dengan CC-Cutter, tidak ada satupun terminal dan aplikasi-aplikasi di dalam perusahaan yang pemakaian bandwidthnya melebihi jatah akses yang sudah ditentukan.

I.2 Identifikasi Masalah

Bagaimana menampilkan data rata-rata pemakaian bandwidth dari modul CC- Cutter ke dalam bentuk halaman web?

I.3 Tujuan

Tujuan dari tugas akhir ini adalah membuat program berbasis web untuk menampilkan data bandwidth dari CC – Cutter.

I.4 Pembatasan Masalah

Pembatasan masalah dalam tugas akhir ini adalah :

• Alat yang digunakan adalah CC-Cutter dengan kapasitas 63 users

(CCT-063).

• Desain dan testing aplikasi hanya untuk monitoring dan reporting

bandwidth internet total dan per user.

Hasil pengolahan data ditampilkan dalam halaman web.

• Modul interface dioperasikan dalam sistem operasi Linux dan database

(35)

Bab I Pendahuluan 3

I.5 Sistematika Pembahasan

Sistematika pembahasan laporan tugas akhir ini disusun menjadi lima bab, yaitu sebagai berikut :

BAB 1 PENDAHULUAN

Bab ini berisi latar belakang permasalahan, identifikasi masalah, tujuan masalah, pembatasan masalah dan sistematika pembahasan dari Tugas Akhir ini. BAB 2 TEORI DASAR

Bab ini membahas mengenai teori-teori dasar yang menunjang pembuatan Tugas Akhir ini.

BAB 3 PERANCANGAN SISTEM

Bab ini berisi perancangan dan realisasi dari program interface yang kemudian dikonversikan ke database dan datanya ditampilkan dalam bentuk halaman web.

BAB 4 DATA PENGAMATAN

Bab ini berisi hasil pengamatan dari program yang ditampilkan dalam halaman web.

BAB 5 KESIMPULAN DAN SARAN

(36)

BAB V

KESIMPULAN DAN SARAN

V.1 Kesimpulan

Berdasarkan hasil pengujian pada Tugas Akhir ini maka dapat disimpulkan beberapa hal sebagai berikut:

1. Program aplikasi dalam bahasa C yang beroperasi dalam Linux sebagai interface dari CC – Cutter berhasil direalisasikan dengan baik.

2. Aplikasi berbasis web dengan menggunakan Php berjalan dengan baik. 3. Pengujian yang dilakukan sebanyak 10 kali menunjukkan tingkat

keberhasilan 100 %, sesuai dengan rancangan. V.2 Saran

Setelah mengevaluasi Tugas Akhir ini, penulis berharap Tugas Akhir ini dapat dikembangkan lebih lanjut dengan beberapa saran sebagai berikut:

1. Untuk aplikasi program bahasa C dalam linux dapat dikembangkan menjadi lebih interaktif.

(37)

DAFTAR PUSTAKA

1. Sulaeman, Widiyanto (0122141), “Program Akademik Untuk Keperluan Praktikum Berbasis Web”, Tugas Akhir Fakultas Teknik Elektro Universitas Kristen Maranatha, 2006.

2. Cogswell, Jeffrey, “Apache, MySQL, and PHP Web Development”, by Wiley Publishing Inc, Indianapolis, Indiana, 2004.

Referensi

Dokumen terkait

Dari hasil perbandingan tabel 7 da- pat diketahui bahwa perencanaan tata ru- ang wilayah yang telah ditetapkan oleh Pemerintah Daerah Kota Yogyakarta pada tahun 2010 belum

Aplikasi ini dibuat karena pencatatan penjualan kain di PPC PT Timatex menggunakan Ms.Excel , dimana saat memasukkan data rawan terjadi kesalahan karena pengulangan

Beberapa penelitian yang telah dilakukan antara lain selain daur ulang dijadikan produk barang yang berguna juga dilakukan konversi sampah plastik menjadi bahan

Maka salah satu bentuk pelayanan fisioterapi dengan memberikan latihan yang bersifat teratur dan terarah untuk meningkatan jarak lompatan(kekuatan) dan keseimbangan

melindungi lini produk yang terbatas untuk segmen yang sempit dari pasar yang potensial. Defender mencoba membagi-bagi dan memperbaiki ceruk pasar ke dalam industri

Penelitian ini adalah penelitian deskriptif kualitatif melalui kajian teoritis untuk menjelaskan pengintegrasian nilai-nilai budi pekerti dan sikap ilmiah dalam

Berdasarkan tabel 4.11 menunjukan niali Cronbach Alpha atas variabel pengetahuan peraturan perpajakan sebesar 0,197, kesadaran membayar pajak sebesar 0,801,

Bahkan terdapat jenis mikroalga yang mampu hidup di salju dan dapat tumbuh subur pada sumber air panas, dengan suhu sampai 85°C yang merupakan batas suhu tertinggi bagi