Google Translate

Minggu, 10 Agustus 2014

Cisco : Konfigurasi Jaringan dengan RIP

Sebuah protokol routing dinamis yang digunakan dalam jaringan LAN (Local Area Network) dan WAN (Wide Area Network). Oleh karena itu protokol ini diklasifikasikan sebagai Interior Gateway Protocol (IGP). Protokol ini menggunakan algoritma Distance-Vector Routing. Pertama kali didefinisikan dalam RFC 1058 (1988). Protokol ini telah dikembangkan beberapa kali, sehingga terciptalah RIP Versi 2 (RFC 2453). Kedua versi ini masih digunakan sampai sekarang, meskipun begitu secara teknis mereka telah dianggap usang oleh teknik-teknik yang lebih maju, seperti Open Shortest Path First (OSPF) dan protokol OSI IS-IS. RIP juga telah diadaptasi untuk digunakan dalam jaringan IPv6, yang dikenal sebagai standar RIPng (RIP Next Generation / RIP generasi berikutnya), yang diterbitkan dalam RFC 2080 (1997).

RIP adalah routing vektor jarak-protokol, yang mempekerjakan hop sebagai metrik routing. Palka down time adalah 180 detik. RIP mencegah routing loop dengan menerapkan batasan pada jumlah hop diperbolehkan dalam path dari sumber ke tempat tujuan. Jumlah maksimum hop diperbolehkan untuk RIP adalah 15. Batas hop ini, bagaimanapun, juga membatasi ukuran jaringan yang dapat mendukung RIP. Sebuah hop 16 adalah dianggap jarak yang tak terbatas dan digunakan untuk mencela tidak dapat diakses, bisa dioperasi, atau rute yang tidak diinginkan dalam proses seleksi.

RIP mengimplementasikan split-horizon, rute holddown, poisoned dan mekanisme untuk mencegah informasi routing yang tidak benar dari yang disebarkan. Ini adalah beberapa fitur stabilitas RIP.
Ada tiga versi dari Routing Information Protocol: RIPv1, RIPv2, dan RIPng.










1
Kita akan menggunakan topologi dan settingan IP pada gambar diatas.
Masuk ke Router0 dan ikuti langkah dibawah :
#Enable
#config terminal
#router rip
-tuliskan network yang menempel pada dirinya :
#network 192.168.0.0
#network 192.168.1.0
#exit
#show ip route
Akan keluar tampilan seperti dibawah ,tanda “R” merupakan tanda dimana network 192.168.2.0 melewati network 192.168.0.2 menggunakan protokol RIP.



2.
#show ip protocols
            Comand show ip protocols memberikan informasi protokol apa yang sedang digunakan pada router tersebut.






3.
#copy run start (untuk menyimpan configurasi)

#show run (memberikan informasi ip yang terkonfigurasi pada interface router dan informasi konfigurasi protokol RIP)




4.
Lakukan hal yang sama pada router 2




5.
Test debug ip rip di router 1 dan router 0


6.
#No debug ip rip (untuk menghentikan debug)
kelemahan pada rip 1 sewaktu di debug masih keluar broadcast 255.255.255.255.

test ping dr wilayah router 0


7.
Test ping dari wilayah router 1



Mudah bukan ? Begitulah cara mengkonfigurasi router RIP pada cisco, jika ingin menggunakan RIP2 ganti saja pada saat #router RIP menjadi #router RIP2.

Algoritma A* Pada Kecerdasan Buatan

Algoritma ini akan menghitung fungsi heuristic dengan cara menambahkan biaya sebenarnya dengan biaya perkiraan. Sehingga didapatkan rumus :
                                                f(n)  =  g(n)  +  h’(n)

g(n)   =   Biaya sebenarnya dari Node Awal ke Node n

h’(n)  =   Biaya perkiraan dari Node n ke Node Tujuan.





Pada gambar dibawah merupakan langkah 1 dari metode pencarian A* yaitu dengan open S,A,B,C,D,E dan closed S mencari nilai f(n).Mencari nilai mana yang paling pendek yaitu nilai f(E) yaitu 84





Setelah langkah 1 selesai maka closed S, E  dan open A, B, C, D, E, J .Di langkah 2 cari nilai f dari node yang diopen dan cari nilai yang terkecil, ditemukan nilai f(B) yang memiliki nilai 85.




Dilanjutkan ke langkah 3 pada gambar dibawahclosed  S,E,B dan open A,C,D,J,F,K. Nilai f(A) memiliki nilai terkecil yaitu 90 nilai B menuju K berjumlah 105 maka di close.




Pada langkah ke 4 di gambar dibawah closed S, E, B, A dan open C, D, J, F, K, G. Nilai F(F)  memiliki nilai terkecil yaitu 95 ,




Langkah 5 pada gambar dibawahclosed S, E, B, A open C, D, J, K, G. Cari nilai f  terkecil yaitu nilai F(K) yang bernilai 95.




Langkah ke 6 pada gambar dibawah closed S, E, B, A ,K dan open C, D, J, G cari nilai f terkecil yaitu nilai f(G) yang bernilai 95.





Setelah semua langkah di jalankan maka akan ditemukan solusi yang terdekat yaitu jalur S – A – B – F – K – G dengan total jarak 95, lihat gambar dibawah, walaupun node E masuk dalam node yang closed namun jarak dari S ke A lebih pendek daripada melalui E.
Algoritma A* merupakan algoritma pencarian yang optimal dibandingkan dengan metode algoritma greedy.


Begitulah kawan penjelasan tentang algoritma A* yang memang rada lieur kalo kata bahasa sundanya hehe... tapi ini berguna untuk aplikasi pencarian seperti maps maupun lainya.

TUTORIAL CRUD DATA Create-Read-Update-Delete Dengan Script PHP dan MySQL

Dalam tutorial ini akan dipelajari cara untuk membuat koneksi ke database dan CRUD data (Create, Read, Update, Delete) dengan studi kasus data user. Tutorial ini belum membahas tentang validasi inputan baik client side maupun server side.
Untuk dapat mengikuti tutorial ini, pastikan anda sudah menginstall server lokal (Misalnya XAMPP) pada PC anda.
Langkah 1 – Struktur Folder
Buat folder baru pada C:\xampp\htdocs\ dengan nama belajar. Folder ini akan menjadi area kerja kita dalam membuat aplikasi yang nantinya dapat diakses menggunakan browser dengan mengetikkan localhost/nama_folder. Karena nama folder kita adalah belajar, maka untuk mengakses aplikasi ketikkanlocalhost/belajar pada address bar browser anda.
Langkah 2 – Database
Buat database dengan nama belajar. Kemudian buat tabel dengan nama userdengan data berikut:
Fieldname
Datatype
user_id
int(4), PRIMARY, AUTO INCREMENT
username
varchar(20)
password
varchar(255)
email
varchar(100)
fullname
varchar(100)
agama
varchar(15)
no_hp
bigint(14)
Langkah 3 – File Konfigurasi
Sebelum dapat melakukan CRUD data kedalam database, kita harus membuat koneksi  ke database terlebih dahulu. Tulis kode berikut dengan menggunakan teks editor kesayangan anda (saya pake dreamweaver).

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?php
//host yang digunakan
//99,9% tidak perlu dirubah
$host = 'localhost';

//username untuk login ke host
//biasanya didapatkan pada email konfirmasi order hosting
$user = 'root';

//jika menggunakan PC sendiri sebagai host,
//secara default password dikosongkan
$pass = '';

//isikan nama database sesuai database
//yang dibuat pada langkah-1
$dbname = 'belajar';

//mengubung ke host
$connect = mysql_connect($host, $user, $pass) ordie(mysql_error());

//memilih database yang akan digunakan
$dbselect = mysql_select_db($dbname);
?>
File config.php ini nantinya akan banyak kita gunakan pada file-file lain yang perlu menghubung ke server untuk menyimpan, merubah, maupun menghapus data.
Langkah 4 – Form Input Data
Ketikkan kode berikut, kemudian simpan dalam folder belajar dengan namaindex.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
<html>
<head>
<title>Belajar PHP</title>
</head>

<body>
<h1>Form Input Data</h1>

<form name="input_data" action="insert.php" method="post">
<table border="0" cellpadding="5" cellspacing="0">
    <tbody>
        <tr>
            <td>Username</td>
            <td>:</td>
            <td><input type="text" name="username"maxlength="20" required="required" /></td>
        </tr>
        <tr>
            <td>Password</td>
            <td>:</td>
            <td><input type="password" name="password"maxlength="20" required="required" /></td>
        </tr>
        <tr>
            <td>Fullname</td>
            <td>:</td>
            <td><input type="text" name="fullname"maxlength="100" required="required" /></td>
        </tr>
        <tr>
            <td>Email</td>
            <td>:</td>
            <td><input type="email" name="email"required="required" /></td>
        </tr>
        <tr>
            <td>Agama</td>
            <td>:</td>
            <td><input type="text" name="agama"required="required" /></td>
        </tr>
        <tr>
            <td>Nomor HP</td>
            <td>:</td>
            <td><input type="text" name="no_hp" maxlength="14"required="required" /></td>
        </tr>
        <tr>
            <td align="right" colspan="3"><input type="submit"name="submit" value="Simpan" /></td>
        </tr>
    </tbody>
</table>
</form>
</body>
</html>
action=”insert.php” adalah file yang digunakan untuk memproses data yang dimasukkan melalui form ini. method=”post” adalah metode pengiriman data yang digunakan. Ada dua jenis menthod untuk mengirim data, yaitu post dan get.
Pengiriman dengan method POST berarti bahwa variabel-variabel data tidak ditampilkan pada url, sedangkan pengiriman dengan method GET, variabel-variabel data disertakan pada url sehingga url terlihat sepertiini:localhost/belajar/insert.php?username=namanya&password=passwordnya&fullname=nama_lengkapnya
Sekarang coba buka pada browser anda dengan mengetikkan localhost/belajarpada address bar browser. Akan tampil form input data seperti ini.



Langkah 5 – Menyimpan Data
Ketikkan kode berikut, kemudian dengan nama insert.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
//panggil file config.php untuk menghubung ke server
include('config.php');

//tangkap data dari form
$username = $_POST['username'];
$password = $_POST['password'];
$fullname = $_POST['fullname'];
$email = $_POST['email'];
$agama = $_POST['agama'];
$no_hp = $_POST['no_hp'];

//simpan data ke database
$query = mysql_query("insert into user values('', '$username', '$password', '$email', '$fullname', '$agama', '$no_hp')") or die(mysql_error());

if ($query) {
    header('location:index.php?message=success');
}
?>
include() digunakan untuk menyertakan file lain dalam file ini. Ingat bahwa pada langkah pertama kita sudah membuat file config.php yang berisi konfigurasi untuk menghubung ke server, maka setiap kali kita perlu untuk menghubung ke database, kita cukup memanggil file config.php saja tanpa harus menuliskan kembali kode-kodenya.
$_POST['name'] digunakan untuk menangkap value yang dikirim dari form. Untuk menangkap data, gunakan name yang sama dengan name dari form. Contoh: untuk menangkap data username dari form, maka gunakan $_POST['username'].
mysql_query() digunakan untuk menjalankan script SQL. Pada langkah ini, script SQL yang kita gunakan adalah untuk menambah data ke database.
Tambahkan kode berikut pada file index.php setelah <h1></h1> untuk menampilkan pesan sukses ketika berhasil menyimpan data.

1
2
3
4
5
6
7
8
9
10
11
...
<h1>Form Input Data</h1>

<?php
if (!empty($_GET['message']) && $_GET['message'] == 'success') {
    echo '<h3>Berhasil menambah data!</h3>';
}
?>

<form name="input_data" action="insert.php" method="post">
...
Sekarang coba jalankan aplikasi dengan membuka localhost/belajar dan isikan data pada form dan klik tombol simpan. Jika berhasil, anda akan melihat pesan Berhasil menambah data! seperti gambar dibawah. Jika gagal, periksa kembali kode yang anda tuliskan. Pastikan tidak ada salah pengetikan.


Langkah 6 – Menampilkan Data
Setelah kita berhasil menyimpan data kedalam database, sekarang kita buat halaman untuk menampilkan data-data yang sudah kita simpan. Ketikkan kode berikut dan simpan dengan nama view.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
<?php
include('config.php');
?>

<html>
<head>
<title>Belajar PHP</title>
</head>

<body>
<h1>Data User</h1>

<a href="index.php">+ Tambah Data</a>

<table border="1" cellpadding="5" cellspacing="0">
    <thead>
        <tr>
            <td>No.</td>
            <td>Username</td>
            <td>Password</td>
            <td>Email</td>
            <td>Fullname</td>
            <td>Agama</td>
            <td>No. HP</td>
            <td>Opsi</td>
        </tr>
    </thead>
    <tbody>
    <?php
    $query = mysql_query("select * from user");

    $no = 1;
    while ($data = mysql_fetch_array($query)) {
    ?>
        <tr>
            <td><?php echo $no; ?></td>
            <td><?php echo $data['username']; ?></td>
            <td><?php echo $data['password']; ?></td>
            <td><?php echo $data['email']; ?></td>
            <td><?php echo $data['fullname']; ?></td>
            <td><?php echo $data['agama']; ?></td>
            <td><?php echo $data['no_hp']; ?></td>
            <td><a href="#">Edit</a> || <a href="#">Hapus</a></td>
        </tr>
    <?php
        $no++;
    }
    ?>
    </tbody>
</table>
</body>
</html>
Kemudian tambahkan kode berikut pada file index.php setelah </form> sebelum</body>.
1
2
3
4
5
6
7
...
</form>

<a href="view.php">Lihat Data</a>

</body>
</html>
Sekarang bukalah localhost/belajar/view.php untuk melihat hasilnya.



Pada kolom opsi terdapat dua menu, yaitu edit dan hapus. Pada langkah ini, kedua menu tersebut masih belum dapat digunakan. Pada langkah berikutnya akan kita buat menu edit tersebut.

Langkah 7 – Merubah/Update Data
Dalam menginputkan data bisa terjadi kesalahan seperti kesalahan input, kesalahan data yang dimasukkan, ataupun lainnya. Untuk itu, data yang sudah disimpan harus dapat dirubah sehingga kesalahan dapat diperbaiki.
Pada dasarnya, form untuk mengedit data adalah sama dengan form untuk menginputkan data. Hanya saja pada form untuk mengedit data, form tersebut harus menampilkan data yang akan dirubah.
Untuk itu, buat file baru dengan nama edit.php, kemudian copy-kan semua kode yang ada pada file index.php kedalam file edit.php. Selanjutnya kita harus menambahkan beberapa kode agar form edit dapat menampilkan data yang akan di edit.
Kode untuk file edit.php menjadi seperti ini. Highlight yang saya berikan adalah baris-baris kode yang ditambahkan ataupun dirubah.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
<?php
include('config.php');
?>

<html>
<head>
<title>Belajar PHP</title>
</head>

<body>
<h1>Form Input Data</h1>

<?php
$id = $_GET['id'];

$query = mysql_query("select * from user where user_id='$id'") or die(mysql_error());

$data = mysql_fetch_array($query);
?>

<form name="update_data" action="update.php" method="post">
<input type="hidden" name="user_id" value="<?php echo $id; ?>" />
<table border="0" cellpadding="5" cellspacing="0">
    <tbody>
        <tr>
            <td>Username</td>
            <td>:</td>
            <td><input type="text" name="username"maxlength="20" required="required" value="<?php echo $data['username']; ?>" disabled /></td>
        </tr>
        <tr>
            <td>Password</td>
            <td>:</td>
            <td><input type="password" name="password"maxlength="20" required="required" value="<?php echo $data['password']; ?>" /></td>
        </tr>
        <tr>
            <td>Fullname</td>
            <td>:</td>
            <td><input type="text" name="fullname"maxlength="100" required="required" value="<?php echo $data['fullname']; ?>" /></td>
        </tr>
        <tr>
            <td>Email</td>
            <td>:</td>
            <td><input type="email" name="email"required="required" value="<?php echo $data['email']; ?>" /></td>
        </tr>
        <tr>
            <td>Agama</td>
            <td>:</td>
            <td><input type="text" name="agama"required="required" value="<?php echo $data['agama']; ?>" /></td>
        </tr>
        <tr>
            <td>Nomor HP</td>
            <td>:</td>
            <td><input type="text" name="no_hp" maxlength="14"required="required" value="<?php echo $data['no_hp']; ?>" /></td>
        </tr>
        <tr>
            <td align="right" colspan="3"><input type="submit"name="submit" value="Simpan" /></td>
        </tr>
    </tbody>
</table>
</form>

<a href="view.php">Lihat Data</a>

</body>
</html>
Kemudian ubah link pada file view.php menjadi seperti ini.

1
<td><a href="edit.php?id=<?php echo $data['user_id']; ?>">Edit</a> || <a href="#">Hapus</a></td>
Umumnya, username seseorang tidak boleh dirubah setelah ia terdaftar. Untuk membuat agar field input username tidak dapat dirubah, kita gunakan atributdisabled. Sampai langkah ini kita belum dapat melakukan perubahan data, kita baru dapat menampilkan data pada form edit. Untuk merubah data pada database, kita perlu membuat query SQL lagi untuk meng-update database dengan data yang baru.
Buat file baru dengan nama update.php dan ketikkan kode berikut.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
include('config.php');

//tangkap data dari form
$id = $_POST['user_id'];
$password = $_POST['password'];
$fullname = $_POST['fullname'];
$email = $_POST['email'];
$agama = $_POST['agama'];
$no_hp = $_POST['no_hp'];

//update data di database sesuai user_id
$query = mysql_query("update user set password='$password', fullname='$fullname', email='$email', agama='$agama', no_hp='$no_hp' where user_id='$id'") or die(mysql_error());

if ($query) {
    header('location:view.php?message=success');
}
?>
Kemudian tambahkan baris kode berikut pada file view.php setelah <h1></h1> (sama seperti pada file index.php).
1
2
3
4
5
<?php
if (!empty($_GET['message']) && $_GET['message'] == 'success') {
    echo '<h3>Berhasil meng-update data!</h3>';
}
?>
Sekarang bukalah halaman view.php pada browser dan ubah-lah salah satu data yang sudah di inputkan dengan meng-klik tombol edit.






Langkah 8 – Menghapus/Delete Data
Setelah bisa menambah dan merubah data, sekarang kita buat untuk menghapus data. Buat file baru dengan nama delete.php dan ketikkan kode berikut.
1
2
3
4
5
6
7
8
9
10
11
<?php
include('config.php');

$id = $_GET['id'];

$query = mysql_query("delete from user where user_id='$id'") or die(mysql_error());

if ($query) {
    header('location:view.php?message=delete');
}
?>
Kemudian tambahkan kode pada link dalam file view.php seperti berikut.
1
2
3
4
<td>
    <a href="edit.php?id=<?php echo $data['user_id']; ?>">Edit</a> ||
    <a href="delete.php?id=<?php echo $data['user_id']; ?>">Hapus</a>
</td>

OK Begitulah cara sederhana untuk CRUD, ini adalah dasar bagi anda yang baru belajar php, jika anda sudah paham akan CRUD ini maka anda pasti bisa mengembangkanya lagi....