program simulasi routing ip pada jaringan ...2.4 tabel routing untuk gambar 2.9 28 2.5 penjelasan...

150
PROGRAM SIMULASI ROUTING IP PADA JARINGAN LOKAL SKRIPSI Diajukan Untuk Memenuhi Syarat Memperoleh Gelar Sarjana Teknik Program Studi Teknik Informatika oleh : Tri Prasetyo Adi NIM : 045314056 PROGRAM STUDI TEKNIK INFORMATIKA JURUSAN TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS SANATA DHARMA YOGYAKARTA 2008

Upload: others

Post on 19-Jan-2021

2 views

Category:

Documents


0 download

TRANSCRIPT

PROGRAM SIMULASI ROUTING IP PADA JARINGAN LOKAL

SKRIPSI

Diajukan Untuk Memenuhi Syarat Memperoleh Gelar Sarjana Teknik Program Studi Teknik Informatika

oleh :

Tri Prasetyo Adi

NIM : 045314056

PROGRAM STUDI TEKNIK INFORMATIKA JURUSAN TEKNIK INFORMATIKA

FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS SANATA DHARMA

YOGYAKARTA 2008

IP ROUTING SIMULATION PROGRAM OF LOCAL AREA NETWORK

A THESIS

Presented as Partial Fulfillment of the Requirements To Obtain Informatics Engineering Degree In Informatics Engineering Department

by:

Tri Prasetyo Adi

NIM : 045314056

INFORMATICS ENGINEERING STUDY PROGRAM INFORMATICS ENGINEERING DEPARTMENT

FACULTY OF SAINS AND TECHNOLOGY SANATA DHARMA UNIVERSITY

YOGYAKARTA 2008

ii

iii

iv

Kesempurnaan

yang bisa dicapai

manusia adalah

bentuk dari usaha terbaik

yang kita bisa lakukan (Mario teguh)

v

INTISARI

Tulisan ini dibuat dengan tujuan untuk membuat program simulasi routing

pada jaringan lokal, sehingga dengan program ini mahasiswa teknik informatika

dapat belajar mengenai proses pengiriman data melalui router.

Program ini mampu memberikan sederhana gambaran tentang setting ip

address pada komputer, dan koneksi antara komputer dengan router, dan berlatih

mengisi tabel routing pada router, dan memberikan visualisasi pengiriman paket

pada saat menalkukan pengujian konektivitas

Program ini dikembengakan dengan menggunakan Macromedia Flash 8

dan Action Script 2.0

vi

ABSTRACT

This writing was made in the purpose of making routing simulation

program in the local network. By using this program, the Informatics students

could learn about data sending process through router.

This program is able to give some simple descriptions about setting ip

address in computer, and the connection between computer and router, and

practicing filling routing table to the router, and give a package sending

visualization when doing connectivity test.

This program was developed by using Macromedia Flash 8 and Action

Script 2.0.

vii

KATA PENGANTAR

Puji syukur saya ucapkan ke hadirat Tuhan Yang Maha Esa atas berkat

dan limpahan kasih karunia yang telah diberikan-Nya sehingga saya dapat

menyelesaikan skripsi ini dengan judul “ PROGRAM SIMULASI ROUTING IP

PADA JARINGAN LOKAL”.

Dorongan serta nasihat dari berbagai pihak sangat membantu sampai

tersusunnya skripsi ini. Untuk itu, saya ingin mengucapkan terima kasih kepada :

1. Bapak dan ibu yang sepenuhnya memberi dukungan moral, spiritual dan

finansial dalam penyusunan skripsi.

2. Kedua Kakaku(EKO dan DWI), keponakanku(Bunga dan Salsa)

3. Romo Ir. Greg. Heliarko SJ, S.S., B.S.T., M.A., M.Sc. selaku Dekan

Fakultas Sains dan Teknologi Universitas Sanata Dharma Yogyakarta.

4. Bapak Puspaningtyas Sanjoyo Adi, S.T., M..T. selaku Ketua Jurusan Teknik

Informatika Fakultas Sains dan Teknologi Universitas Sanata Dharma

Yogyakarta.

5. Ibu Agnes Maria Polina, S.Kom., M.Sc., selaku Dosen Pembimbing

Akademik Angkatan 2004 Jurusan Teknik Informatika Fakultas Sains dan

Teknologi Universitas Sanata Dharma Yogyakarta.

6. Bapak DS. Bambang Soelistijanto, ST.,MSc selaku Dosen Pembimbing

pertama dan Bapak Agung Hernawan, ST selaku Dosen Pembimbing kedua

Skripsi. Terimakasih telah membimbing dan menyediakan waktu dalam

memberikan pengarahan selama penulisan skripsi ini.

viii

7. Kepada teman teman seperjuangan : SI Celep, Si Bhe, MB, Kunto, Bendot,

Susi, Agnes dan teman-teman Mahasiswa TI 04

Akhirnya skripsi ini terselesaikan, disadari bahwa skripsi ini jauh dari

sempurna. Untuk itu penulis dengan rendah hati mengharapkan kritik dan saran

yang dapat memberikan kesempurnaan pada penulisan skripsi ini. Akhir kata,

semoga skripsi ini dapat bermanfaat bagi penulis, juga pihak yang membutuhkan.

Yogyakarta, 24 November 2008

Penulis

ix

PERNYATAAN KEASLIAAN KARYA

Saya menyatakan dengan sesungguhnya bahwa Tugas Akhir yang saya

tulis ini tidak memuat karya atau bagian karya orang lain, kecuali yang telah

disebutkan dalam kutipan daftar pustaka, sebagaimana layaknya karya ilmiah.

Yogyakarta, 26 November 2008

Penulis

Tri Prasetyo Adi

x

LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS

Yang bertanda tangan di bawah ini, saya mahasiswa Universitas Sanata Dharma :

Nama : Tri Prastyo Adi Nomor Mahasiswa : 045314056

Demi pengembangan ilmu pengetahuan, saya memberikan kepada Perpustakaan Universitas Sanata Dharma karya ilmiah saya yang berjudul : PROGRAM SIMULASI ROUTING PADA JARINGAN LOKAL beserta perangkat yang diperlukan (bila ada). Dengan demikian saya memberikan kepada Perpustakaan Universitas Sanata Dharma hak untuk menyimpan, me-ngalihkan dalam bentuk media lain, mengelolanya dalam bentuk pangkalan data, mendistribusikan secara terbatas, dan mempublikasikannya di Internet atau media lain untuk kepentingan akademis tanpa perlu meminta ijin dari saya maupun memberikan royalti kepada saya selama tetap mencantumkan nama saya sebagai penulis. Demikian pernyataan ini yang saya buat dengan sebenarnya. Dibuat di Yogyakarta Pada tanggal : 26 November 2008 Yang menyatakan (Tri Prasetyo Adi)

xi

ariu
ff

DAFTAR ISI

Halaman

HALAMAN JUDUL ......................................................................................... i

HALAMAN JUDUL ......................................................................................... ii

HALAMAN PERSETUJUAN PEMBIMBING ............................................. iii

HALAMAN PENGESAHAN ........................................................................... iv

MOTTO ......................................................................................... v

INTISARI ......................................................................................... vi

ABSTRACT ......................................................................................... vii

KATA PENGANTAR ....................................................................................... viii

HALAMAN KEASLIAN KARYA .................................................................. x

LEMBAR PERNYATAAN .............................................................................. xi

DAFTAR ISI ..................................................................................................... xii

DAFTAR GAMBAR .................................................................................... xxii

DAFTAR TABEL ........................................................................................ xxix

DAFTAR LISTING ..................................................................................... xxxiv

DAFTAR LAMPIRAN ................................................................................ xxxv

BAB I PENDAHULUAN .................................................................................. 1

1.1. Latar Belakang Masalah ....................................................................... 1

1.2. Rumusan Masalah ................................................................................. 2

1.3. Batasan Masalah ................................................................................... 2

1.4. Tujuan Penelitian ................................................................................... 3

1.5. Metodologi Penelitian ........................................................................... 3

1.6. Sistematika Penulisan ............................................................................ 4

xii

BAB II LANDASAN TEORI................................................................................6

2.1. Multimedia…………………………………………………………….…….6

2.2. CAI……………………………………………………………………….….6

2.3. Simulasi..............................……………………………………………….…8

2.4. IMK……………………………………………………………………….…8

2.5. Metodologi Pengembangan Multimedia…………………………………….9

2.5.1.Konsep………………………………………………………………….……9

2.5.2.Desain………………………………………………………………………10

2.5.3.Pengumpulan Material……………………………………………………..11

2.5.4.Pembuatan………………………………………………………………….12

2.5.5.Testing……………………………………………………………………...12

2.5.6.Distribusi…………………………………………………………………...13

2.6. Diagram Alur Sistem……………………………………………………….13

2.7. Jaringan Komputer…………………………………………………………14

2.8. Protokol…………………………………………………………………….14

2.9. Internet Protocol……………...……………………………………………15

2.9.1 Definisi dan karakteristik ……………………………………………….15

2.9.2 IP Address……………………………………………………………………..…17

2.9.2.1 Format Penulisan IP Address…………………………………………….…….17

2.9.2.2 Pembagian Kelas IP Address…………………………………….………….18

2.9.2.3 Address Khusus………………………………………………………..20

2.9.2.4 Subnetting…………………………………………………………..…23

xiii

2.9.2.4.1 Representasi Subnet Mask……………………………………………..26

2.9.2.4.2 Menentukan alamat Network Identifier………………………………..29

2.9.2.5 Routing………………………………………………………………....29

2.9.2.5.1 Static Routing…………………………………………………………..30

2.6.2.5.2 Table Routing…………………………………………………………..30

2.9.3 Protokol ICMP…………………………………………………………..31

2.9.3.1 Definisi dan karakteristik………………………...................................31

2.9.3.2 Timbulnya ICMP……………………………………………………...32

2.9.3.3 ICMP Message………………………………………………………...32

2.9.3.4 ICMP error message ………………………………………………….33

2.9.3.5 ICMP Query Messages ……………………………………………….35

2.10. Router………………………………………………………………………36

2.11. Packet Internet Groper (PING)…………………………………………….28

2.8.1 Ping bekerja dengan mengirimkan sebuah paket ………………………..36

2.8.2 Contoh proses pengiriman data………………………………………….36

BAB III ANALISA DAN DESAIN SISTEM ................................................. ..47

3.1. Analisa Sistem..........................................................................................47

3.1.1. Analisa Masalah....................................................................................48

3.2. Desain Sistem............................................................................................48

3.2.1. Flowchart Sistem....................................................................................49

3.2.2. Flowchart Proses Uji Konektivitas ( echo request)................................50

3.2.3. Pemodelan Class....................................................................................53

xiv

3.2.4. Spesifikasi Perangkat Sistem.................................................................53

3.2.5. Rancangan Struktur Navigasi.................................................................54

3.2.6 Peancangan Tampilan............................................................................55

3.2.6.1. Perancangan Menu Simulasi...............................................................55

3.2.6.2. Form Add PC......................................................................................56

3.2.6.3. Form Add Network.............................................................................57

3.2.6.4. Form Add Router................................................................................57

3.2.6.5. Form Properties PC.............................................................................58

3.2.6.6. Form Properties Network....................................................................58

3.2.6.7. Form Properties Router.......................................................................59

3.2.6.8. Form Koneksi Network ke Router......................................................59

3.2.6.9. Form Routing Table............................................................................60

3.2.6.10. Form Uji Konektivitas.......................................................................60

3.2.6.11. Form IP Kalkulator...........................................................................61

3.2.6.12. Form Error Message.........................................................................61

3.2.6.13. Rancangan Tutorial...........................................................................62

BAB IV IMPLEMENTASI.................................................................................63

4.1. Implemtasi Program..................................................................................63

4.1.1. Menu Simulasi.......................................................................................63

4.1.1.1. Halaman Simulasi...............................................................................63

4.1.1.2. Form Add PC......................................................................................64

4.1.1.3. Form Add Network.............................................................................65

4.1.1.4. Form Add Router................................................................................66

xv

4.1.1.5. Form Properties PC.............................................................................67

4.1.1.6. Form Properties Network....................................................................68

4.1.1.7. Form Properties Router.......................................................................68

4.1.1.8. Koneksi...............................................................................................69

4.1.1.9. Form Routing Tabel............................................................................70

4.1.1.10. Form Uji Konektivitas.......................................................................71

4.1.1.11. Form Error Message..........................................................................72

4.1.2 Menu Tutorial.........................................................................................73

4.2. Pengujian Sistem dan Analisa...................................................................73

4.2.1. Konfigurasi 1..........................................................................................74

4.2.2. Konfigurasi 2..........................................................................................77

4.2.3 Konfigurasi 3..........................................................................................77

4.3. Listing dan Penjelasanya...........................................................................77

4.3.1. Class PC.................................................................................................78

4.3.2. Class Network........................................................................................78

4.3.3. Class Router...........................................................................................79

4.3.4. Class Koneksi.........................................................................................79

4.3.5. Fungsi Hitung IP....................................................................................80

4.3.6. Fungsi Uji Konektivitas(PING).............................................................81

4.4 Analisa Hasil Pengujian Sistem.................................................................84

BAB V KESIMPULAN DAN SARAN...............................................................90

5.1. Kesimpulan ............................................................................................ ..90

5.2. Kelebihan dan Kekurangan.......................................................................90

xvi

5.3. Saran.........................................................................................................91

DAFTAR PUSTAKA ....................................................................................... ..92

LAMPIRAN....................................................................................................

DAFTAR GAMBAR

Gambar Keterangan Halaman

2.1 Tahap Pengembangan Multimedia 9

2.2 Format datagram IP 15

2.3 Format IP Address 18

2.4 IP Addres kelas A 19

2.5 IP Addres kelas B 19

2.6 IP Addres kelas C 20

2.7 Struktur IP Address Kelas Multicast Address 22

2.8 Subnetting 16 bit pada IP Address kelas A 24

2.9 jaringan dengan 3 router. 31

2.10 Timbulnya ICMP 33

2.11 Format ICMP Message 33

2.12 Destination unreachable 34

2.13 Pesan destination unreachable 34

2.14 Echo request dan echo reply 35

2.15 pesan echo request dan echo reply ICMP 35

2.16 Jaringan 1 router 38

2.17 Hasil perintah PING 39

xvii

3.1 Flowchart Sistem 49

3.2 Flowchart Proses Uji Konektivitas (echo request) 50

3.3 Jaringan 1 router 52

3.4 Class class yang dibutuhkan 53

3.5 Struktur Navigasi Menu 55

3.6 Halaman utama simulasi 55

3.7 Form add PC 56

3.8 Form add Network 57

3.9 Form add router 57

3.10 Form Properties PC 58

3.11 Form Properties Network 58

3.12 Form Properties Router 59

3.13 Form Koneksi Nework ke Router 59

3.14 Form Routing table 60

3.15 Form Uji konektivitas 60

3.16 Form IP Kalkulator 61

3.17 Form error message 61

3.18 Halaman Tutorial 62

4.1 Halaman Utama Simulasi 63

4.2 Form isian untuk menambah PC 64

4.3 Form isian untuk menambah Network 65

4.4 Form isian untuk menambah Router 66

xviii

4.5 PC, Network, Router 67

4.6 Tampilan PC Properties 67

4.7 Tampilan Network Properties 68

4.8 Tampilan Router Properties 68

4.9 Koneksi PC ke Network 69

4.10 Koneksi Network ke Router 69

4.11 Form Connect Network ke Router 70

4.12 Form Routing Table 70

4.13 Form Uji Konektivitas 71

4.14 Visualisasi 71

4.15 Error message 72

4.16 konfigurasi pada pengujian sistem 73

4.19 Pie chart jawaban pertanyaan survey 1 bagian 1 85

4.20 Pie chart jawaban pertanyaan survey 2 bagian 1 85

4.21 Pie chart jawaban pertanyaan survey 3 bagian 1 86

4.22 Pie chart jawaban pertanyaan survey 1 bagian 2 86

4.23 Pie chart jawaban pertanyaan survey 2 bagian 2 87

4.24 Pie chart jawaban pertanyaan survey 3 bagian 2 87

4.25 Pie chart jawaban pertanyaan survey 4 bagian 2 88

4.26 Pie chart jawaban pertanyaan survey 5 bagian 2 88

4.27 Pie chart jawaban pertanyaan survey 6 bagian 2 89

xix

DAFTAR TABEL

Tabel Keterangan Halaman

2.1 Simbol diaram alur sistem 13

22 Beberapa kombinasi IP address, netmask dan network

address

25

2.3 Prefix 27

2.4 Tabel routing untuk gambar 2.9 28

2.5 Penjelasan setiap tipe dan code ICMP 33

2.6 Nilai kode untuk pesan destination unreachable 34

4.1 Deskripsi Konsep Sistem 48

4.2 Hasil pengujian pda uji konektivitas 74

4.3 Pengujian dengan Gateway pada PC1 dihapus atau diganti. 77

4.4 Pengujian dengan tabel routing pada R1 dihapus. 77

xx

BAB I

PENDAHULUAN

1.1 Latar Belakang Masalah

Saat ini pembangunan jaringan komputer seakan sudah menjadi hal wajib

dalam sebuah organisasi baik perusahaan, instansi pemerintahan ataupun

universitas. Komunikasi data yang cepat, mudah akses dan memiliki validitas

yang tinggi hanya bisa dilakukan jika organisasi tersebut memiliki jaringan

komputer yang baik pula. Salah satu alat yang penting dalam pembangunan

jaringan adalah router. Router adalah alat yang berfungsi untuk mengatur lalu

lintas dan komunikasi data pada jaringan yang berbeda.

Pembelajaran mengenai routing adalah salah satu bab yang penting pada

mata kuliah jaringan komputer. Selama ini pembelajaran jaringan dan routing

dikelas hanya menggunakan penjelasan dipapan tulis, sehingga mahasiswa sulit

untuk membayangkan bagaimana konfigurasi dan proses kerja sebuah jaringan

terutama mengenai proses routing.

Dari latar belakang masalah diatas maka penulis mengambil judul untuk

menerapkan aplikasi “Program simulasi routing IP pada jaringan lokal”. Aplikasi

ini bisa memberikan gambaran mengenai jaringan sederhana, disana user dapat

bereksperimen dengan konfigurasi jaringan yang dikehendaki selain itu juga ada

visualisasi proses pengiriman data, user juga akan dibimbing melalui tutorial

yang akan menyediakan informasi seputar jaringan dan router. Jadi dengan

1

2

program bantu pembelajaran routing user dapat belajar mengenai jaringan dan

routing secara interaktif dan menarik.

1.2 Rumusan Masalah

Bagaimana membuat suatu program simulasi routing IP pada jaringan

lokal yang interaktif dan menarik.

1.3 Batasan Masalah

Untuk membatasi ruang lingkup dari permasalahan yang ada, serta agar

mencapai tujuan dan sasaran berdasarkan pada rumusan masalah diatas, maka

diberikan beberapa batasan masalah yaitu :

a. Router pada program bantu ini mensimulasikan sebuah komputer yang di

upgrade menjadi komputer multi homed host dan maksimum 3 ethernet.

b. Program bantu ini dibatasi menggunakan 5 network , 4 router dan 6 PC

c. Program bantu ini dibatasi hanya untuk routing statis

d. Pengujian konektivitas menggunakan perintah ping mengadopsi cara kerja

PING (pada sistem operasi windows) dan ICMP.

e. Visualisasi hanya untuk echo request dan echo reply

f. Menggunakan IPv4.

g. Hanya membahas proses yang berlangsung di network layer

h. Tidak membahas kualitas koneksinya, prioritas jalur (metric), time to live

dan roundtrip time

i. Tidak menyediakan fasilitas penyimpanan data

3

j. Program bantu dibuat dengan menggunakan Macromedia Flash 8 dan

Action Script 2.0

1.4 Tujuan Penelitian

Merancang sebuah program bantu pembelajaran routing IP pada jaringan

lokal yang interaktif sebagai media alternatif untuk mengetahui proses routing.

1.5 Metodologi Penelitian

Metodologi yang digunakan untuk menyelesaikan penulisan ini adalah

metodologi pengembangan multimedia (Luther, 1994) :

1. Konsep

Pada tahap ini dilakukan identifikasi masalah dan tujuan pembuatan

program

2. Desain

Pada tahap ini dilakukan analisa kebutuhan pembuatan program.

Kemudian diakukan perancangan sistem sesuai rancangan sistem hasil

analisa yang telah dilakukan. Rancangan tersebut meliputi rancangan

user interface dan rancangan program.

3. Pengumpulan bahan

Pada tahap ini dilakukan pengumpulan bahan seperti gambar serta

bahan-bahan lain yang diperlukan untuk tahap berikutnya.

4

Pengumpulan bahan dapat dilakukan secara paralel atau bersamaan

dengan tahap implementasi/pembuatan.

4. Implementasi

Pada tahap ini dilakukan proses pembuatan program berdasarkan

desain, yaitu menerjemahkan desain ke dalam bahasa pemrograman

action script.

5. Pengujian

Pada tahap ini dilakukan pengujian program untuk mencari kesalahan

dan kemudian dilakukan perbaikan.

6. Distribusi

Pada tahap ini didefinisikan bagai mana program nantinya akan

didistribusikan

1.6. Sistematika Penulisan

BAB I Pendahuluan

Pada bab ini dibahas mengenai latar belakang masalah,

rumusan masalah, batasan masalah, metode penelitian, tujuan

penelitian dan sistematika penulisan.

BAB II Landasan Teori

Pada bab ini akan dibahas mengenai pengertian jaringan,

IP, ICMP, PING, router, routing statis, actionscript dan

Macromedia Flash 8.

5

BAB III Analisa dan perancangan sistem

Pada bab ini akan dibahas mengenai analisa kebutuhan

sistem dan perancangan program beserta penjelasan mengenai

kebutuhan perangkat lunak dan perangkat keras dari program

tersebut.

BAB IV Implementasi

Pada bab ini akan dibahas penjelasan mengenai pembuatan

program.

BAB V Kesimpulan dan saran.

Pada bab ini berisi kesimpulan dan saran dari seluruh

penulisan.

Daftar Pustaka

BAB II

LANDASAN TEORI

2.1. Multimedia

Istilah multimedia digunakan dalam banyak hal, seperti sistem informasi

multimedia, computer multimedia, perangkat lunak multimedia dan lain-lain.

Dalam buku Multimedia interaktif dengan Flash dikatakan bahwa ‘Multimedia

adalah suatu teknologi untuk perangkat keras (hardware) dan perangkat lunak

(software) yang membawa media teks, ilustrasi, gambar, suara, animasi dan video

sebuah computer.’.

Satu definisi yang mudah untuk menjelaskan definisi dari multimedia

adalah penggabungan beberapa media seperti data, audio dan video menjadi satu.

Pada umumnya, multimedia merupakan perantara dalam pembelajaran

yang mengkombinasikan teks, video, suara dan animasi dalam sebuah perangkat

lunak komputer yang interaktif (Sutopo, 2003).

2.2. CAI (Computer-Assisted Instruction)

Perkembangan komputer baik dalam segi kuantitas, kualitas, maupun

teknologinya cenderung sangat pesat belakangan ini. Hal ini menyebabkan

semakin banyaknya jumlah kepemilikan perangkat komputer dengan aplikasi

yang semakin bervariasi pula. Akan tetapi penggunaan komputer dalam

pendidikan khususnya yang berkaitan dengan proses belajar mengajar sangatlah

terbatas. Padahal komputer sangat potensial untuk dipakai sebagai alat bantu

pengajaran Salah satu bentuk pemanfaatan komputer sebagai alat bantu

pengajaran adalah program CAI (computer-assisted instruction)

CAI adalah suatu model instruksional yang melibatkan siswa dengan

komputer secara langsung. Komputer berperan untuk menyampaikan isi pelajaran,

memberikan latihan-latihan dan mengetes kemajuan belajar siswa.

Komputer dalam bentuk program CAI ternyata lebih efektif dibanding

dengan alat bantu lainnya. dalam studi metaanalisisnya, ternyata dengan program

6

7

CAI siswa dapat belajar lebih cepat, lebih banyak, dan lebih bersemangat.

Memperhatikan karaktristik pembelajaran berbasis komputer seperti CAI sangat

mendukung namun masih ada dukungan teoritik maupun riil dilapangan, maka

model ini menjadi well-estabilited dalam sistem pendidikan kita. Model

pembelajaran berbasis komputer adalah penggerak dan unggul untuk membantu

siswa belajar melakukan tugas-tugas secara mandiri maupun secara kelompok,

menggunakan sumber-sumber dari dunia maya maupun lokal dalam menambah

wawasan berpikir siswa. Pembelajaran dengan sistem komputer akan lebih efektif

dan menguntungkan sebagai model pembelajaran (Herman, 2006).

Manfaat CAI antara lain :

1. Sebagai alat bantu bagi guru dalam menyampaikan materi ajar kepada

peserta didik.

2. Akan lebih mempercepat proses penyampaian pembelajaran, karena siswa

dapat berinteraksi dengan sistem.

Jenis Aplikasi CAI :

1. Latih & Praktek (Drill & Practice) : menguji tingkat pengetahuan siswa.

2. Penjelasan (tutorial) : untuk materi ajaran baru, disini siswa dapat

berinteraksi dengan komputer.

3. Simulasi : digunakan untuk mengkaji permasalahan yang rumit.

4. Permainan (game) : agar bisa mendapat pengetahuan dengan cara santai.

Kelebihan CAI antara lain sebegai berikut berikut :

1. Meningkatkan interaksi.

2. Individualisasi.

3. Kelebihan secara administratif dan biaya.

4. Motivasi.

5. Umpan balik segera/cepat

6. Mudah menyimpan data.

7. Integritas pembelajaran. Kendali siswa.

8

Keterbatasan CAI antara lain sebagai berikut :

1. Perangkat Keras (Hardware) yang mahal.

2. Kesulitan untuk me-review materi.

3. Bergantung pada kemampuan membaca dan visual.

4. Grafik yang tidak realistik.

5. Butuh keterampilan pengembangan tambahan.

6. Waktu pengembangan yang lama.

7. Persepsi hanya dari input yang telah terprogram .

2.3. Simulasi

Simulasi adalah peniruan nyata beberapa hal, keadaan, atau proses.

Perbuatan dari simulasi umumnya memerlukan suatu yang mewakili karakteristik

tertentu atau kunci perilaku yang dipilih sistem fisik atau abstrak. Simulasi

digunakan dalam banyak konteks, termasuk modeling sistem alam atau sistem

manusia untuk mendapatkan informasi tentang mereka berfungsi. konteks lain

termasuk simulasi teknologi untuk optimasi performa, keselamatan rekayasa,

pengujian, pelatihan dan pendidikan. Simulasi dapat digunakan untuk

menunjukkan sikap yang nyata efek dari alternatif kondisi dan program aksi

(Indrianto,2003).

2.4. IMK (Interaksi Manusia dan Komputer)

Ketika komputer pertama kali diperkenalkan secara komersial pada tahun

50-an, mesin ini sangat sulit dipakai dan sangat tidak praktis. Hal demikian karena

waktu itu komputer merupakan mesin yang sangat mahal dan besar, hanya dipakai

dikalangan tertentu, misalnya para ilmuwan atau ahli-ahli teknik. Setelah

komputer pribadi (PC) diperkenalkan pada tahun 70-an, maka berkembanglah

penggunaan teknologi ini secara cepat dan mengagumkan ke berbagai penjuru

kehidupan (pendidikan, perdagangan, pertahanan, perusahaan, dan sebagainya).

Kemajuan-kemajuan teknologi tersebut akhirnya juga mempengaruhi

9

rancangan sistem. Sistem rancangan dituntut harus bisa memenuhi kebutuhan

pemakai, sistem harus mempunyai kecocokkan dengan kebutuhan pemakai atau

suatu sistem yang dirancang harus berorientasi kepada pemakai. Pada awal tahun

70-an ini, juga mulai muncul isu teknik antarmuka pemakai (user interface) yang

diketahui sebagai Man-Machine Interaction (MMI) atau Interaksi Manusia-Mesin.

Para peneliti akademis mengatakan suatu rancangan sistem yang

berorientasi kepada pemakai, yang memperhatikan kapabilitas dan kelemahan

pemakai ataupun sistem (komputer) akan memberi kontribusi kepada interaksi

manusia-komputer yang lebih baik. Maka pada pertengahan tahun 80-an

diperkenalkanlah istilah Human-Computer Interaction (HCI) atau Interaksi

Manusia-Komputer.

Bidang ilmu interaksi manusia dan komputer adalah ilmu yang

mempelajari tentang bagaimana mendesain, mengevaluasi, dan

mengimplementasikan sistem komputer yang interaktif sehingga dapat digunakan

oleh manusia dengan mudah. Interaksi adalah komunikasi 2 arah antara manusia

(user) dan sistem komputer. Interaksi menjadi maksimal apabila kedua belah

pihak mampu memberikan stimulan dan respon (aksi & reaksi) yang saling

mendukung (Shneiderman, 1980).

2.5. Metodologi Pengembangan Multimedia

Multimedia dilakukan berdasarkan 6 tahap, yaitu konsep, perancangan,

pengumpulan bahan, pembuatan, testing dan distribusi (Luther,1994).

Gambar 2.1 Tahap Pengembangan Multimedia

10

2.5.1. Konsep

Pada tahap ini terdiri dari beberapa langkah meliputi :

a. Tujuan Aplikasi (informasi, hiburan, pelatihan, dan lain-lain)

b. Identifikasi Pengguna

c. Bentuk Aplikasi (presentasi, interaktif, dan lain-lain)

d. Spesifikasi Umum (ukuran aplikasi, dasar perancangan, target yang ingin

dicapai, dan lain-lain)

2.5.2.Desain

Desain (perancangan) adalah membuat spasifikasi secara rinci mengenai

struktur aplikasi multimedia yang akan dibuat, gaya dan kebutuhan bahan

(material) untuk aplikasi. Spesifikasi dibuat cukup rinci sehingga pada tahap

berikutnya, yaitu tahap pengumpulan bahan dan pembuatan tidak dibutuhkan

keputusan baru, melainkan menggunakan apa yang telah ditetapkan pada tahap

desain. Namun demikian, sering terjadi penambahan atau pengurangan bahan,

bahkan ada perubahan pada bagian aplikasi pada awal pengerjaan multimedia.

Tahap desain multimedia sering melibatkan kegiatan:

a. Pembuatan Bagan Alir (Flow Chart), yaitu menggambarkan struktur

aplikasi multimedia yang disarankan.

b. Pembuatan Storyboard, yaitu pemetaan elemen-elemen atau bahan

(material) multimedia pada setiap layar aplikasi multimedia.

Cara menentukan urutan atau hubungan dalam merancang Bagan Alir (Flow

Chart) atau Peta Konsep:

a. Ikuti hirarki alami materi.

b. Berdasarkan minat pengguna.

c. Dari yang sudah dikenal sampai yang belum dikenal.

d. Dari yang konkret sampai yang abstrak.

e. Dari yang umum sampai yang spesifik.

11

f. Berdasarkan pertimbangan topik pembahasan.

g. Secara kronologis didasarkan pada pemakaian atau kinerja.

Storyboard digunakan untuk:

a. Memungkinkan tim dan klien (pengguna) memeriksa, menyetujui, dan

meningkatkan rancangan.

b. Menjadi panduan bagi programmer dan graphics designer.

c. Mengetahui elemen (material) multimedia yang dipakai.

d. Menjaga konsistensi di sepanjang aplikasi multimedia.

e. Memungkinkan rancangan diimplentasikan pada platform yang berbeda,

karena storyboard bersifat platform independent.

Storyboard perlu mengandung:

a. Nama aplikasi (program) atau modul dan nomor halaman atau nomor

layar.

b. Gambar sketsa layar atau halaman beserta rincian objek-objek yang ada

pada layar, meliputi: Teks, Gambar, Animasi, Audio, Narasi, Video,

Warna, penempatan, ukuran gambar, jika penting, Warna dan font dari

teks.

c. Interaksi: pencabangan dan aksi-aksi lainnya (tombol).

Perancangan Antarmuka Pemakai:

a. Graphics Designer merancang antarmuka pemakai berdasarkan

storyboard.

b. Antarmuka pemakai harus : menggapai “look and feel” dari organisasi

klien, memproyeksikan yang sesuai bagai pemakai, tidak boleh lebih kuat

daripada pesan yang ingin disampaikan, tetapi harus mendukung

pesannya.

12

2.5.3 Pengumpulan Material

Pada tahap ini dilakukan beberapa langkah antara lain :

a. Melakukan pengumpulan bahan (material) seperti: clipart, image, animasi,

audio, berikut pembuatan grafik, foto, audio, dan lain-lain yang diperlukan

untuk tahap berikutnya.

b. Bahan yang diperlukan dalam multimedia dapat diperoleh dari sumber-

sumber seperti: library, bahan yang sudah ada pada pihak lain, atau

pembuatan khusus yang dilakukan oleh pihak luar.

c. Pengumpulan material dapat dilakukan paralel dengan tahap pembuatan

(assemby).

2.5.4 Pembuatan

Pada tahap ini dilakukan beberapa langkah antara lain :

a. Tahap pembuatan (assembly) merupakan tahap dimana seluruh objek

multimedia dibuat atau diintegrasikan.

b. Pembuatan aplikasi berdasarkan flow chart, storyboard, struktur navigasi

atau diagram objek yang berasal dari tahap disain.

c. Dapat menggunakan perangkat lunak authoring yang mempunyai fitur

pembuatan flow chart dan disain, misal: Microsoft Frontpage,

Macromedia, dan lain-lain.

2.5.5 Testing

Pada tahap ini dilakukan beberapa langkah antara lain :

a. Tahap testing dilakukan setelah tahap pembuatan dan seluruh bahan

(material) telah dimasukkan.

b. Biasanya pada tahap awal dilakukan testing secara modular untuk

memastikan apakah hasilnya seperti yang diinginkan.

13

c. Aplikasi yang telah dihasilkan harus dapat berjalan dengan baik di

lingkungan pengguna (klien), dimana pengguna dapat merasakan adanya

kemudahan dan manfaat dari aplikasi tersebut serta dapat menjalankan

sendiri terutama untuk aplikasi yang interaktif.

2.5.6 Distribusi

Pada tahap ini dilakukan beberapa langkah antara lain :

a. Bila aplikasi multimedia akan digunakan dengan mesin yang berbeda,

penggandaan menggunakan floppy disk, CD-ROM, tape, atau distribusi

dengan jaringan sangat diperlukan.

b. Tahap distribusi juga merupakan tahap evaluasi terhadap suatu produk

multimedia, diharapkan akan dapat dikembangkan sistem multimedia yang

lebih baik di kemudian hari.

2.6. Bagan Alir Sistem(Flowchart)

Bagan Alir sistem menggambarkan arus data dalam sistem (Jogianto,

1999). Simbol-simbol yang digunakan dalam diagram alur sistem akan dijelaskan

dalam table 2.1 berikut:

Tabel 2. 1 Simbol diaram alur sistem

Document symbol

Menunjukkan dokumen yang digunakan untuk

input dan output baik secara manual, mekanik

maupun komputerisasi.

Manual action symbol

Menunjukkan pekerjaan yang dilakukan secara

manual

14

Process symbol

Menunjukkan kegiatan proses operasi program

computer.

Keyboard (terminal)

symbol

Input/output yang menggunakan online keyboard

Flow lines symbol

Menunjukkan arus dari proses

Display symbol

Output yang ditampilkan di layar monitor.

2.7 Jaringan Komputer

Jaringan komputer adalah sekelompok komputer otonom yang saling

dihubungkan satu dengan yang lainnya menggunakan protokol komunikasi

melalui media komunikasi, sehingga dapat saling berbagi data dan informasi,

aplikasi-aplikasi, SI dan program-program lainnya, berbagi pakai perangkat keras

seperti printer, harddisk dan sebagainya.

Proses dasar sistem jaringan sangat sederhana, yaitu proses pengiriman

data atau informasi dari pengirim ke penerima dengan prosedur tertentu, melalui

suatu media komunikasi tertentu secara cepat dan tepat, tanpa adanya

kesalahan(Dharma Oetomo, 2003).

15

Protokol

Protokol komunikasi komputer adalah Aturan-aturan dan perjanjian yang

mengatur pertukaran informasi antar komputer melalui suatu medium jaringan.

Internet Protocol

Definisi dan karakteristik

Internet Protocol (IP) berfungsi menyampaikan paket data ke alamat yang

tepat. Oleh karena itu Internet Protocol memegang peranan yang sangat penting

dari jaringan TCP/IP.

IP merupakan protocol pada network layer yang bersifat :

1) Connectionless, yakni setiap paket data yang dikirim pada suatu saat akan

melalui rute secara independen. Paket IP (datagram) akan melalui rute

yang ditentukan oleh setiap router yang dilalui oleh datagram tersebut. Hal

ini memungkinkan keseluruhan datagram tiba di tempat tujuan dalam

urutan yang berbeda karena menempuh rute yang berbeda pula.

2) Unreliable atau ketidakandalan yakni IP tidak menjamin datagram yang

dikirim pasti sampai ke tempat tujuan. Ia hanya akan melakukan best effort

delivery yakni melakukan usaha sebaik-baiknya agar paket yang dikirim

tersebut sampai ke tujuan.

Suatu datagram bisa saja tidak sampai dengan selamat ke tujuan karena

beberapa hal berikut:

a. Adanya error bit pada saat pentransmisian datagram pada suatu medium.

b. Putusnya rute ke tujuan untuk sementara waktu akibat adanya router yang

down Terjadinya kekacauan routing, sehingga datagram mengalami

looping

Sebagai contoh, agar datagram IP dapat menemukan tujuannya,

diperlukan informasi tambahan yang harus dicantumkan pada header ini. Struktur

header datagram protokol IP dapat dilihat pada gambar berikut.

16

Version(Vers)i

(4 bit) 0

Header

length

(Tajuk

panjang)

(4 bit)

Service type

(Jenis

Layanan )

(8 bit)

Total length (Total panjang)

(16 bit)

Identification (Identifikasi)

(16 bit)

Flag

(Bendera)

(3 bit)

Fragment offset

(Selisih Fragmen)

(13 bit)

Time to live

( Waktu untuk hidup) (8 bit)

Protocol

(8 bit)

Header checksum

(16 bit)

Source IP address

(Sumber alamat IP) (32 bit)

Destination IP address

(Tujuan alamat IP) (32 bit)

Data

Gambar 2.2 Format datagram IP

Setiap paket IP membawa data yang terdiri atas :

a. (Version), yaitu versi dari protokol IP yang dipakai.

b. (Header Length), berisi panjang dari header paket IP dalam hitungan 32

bit word.

c. (Type of Service), berisi kualitas service yang dapat mempengaruhi cara

penanganan paket IP.

d. (Total length Of Datagram), panjang IP datagram total dalam ukuran byte.

17

e. (Identification, Flags, dan Fragment Offset), berisi data yang berhubungan

fragmentasi paket.

f. Time to Live, berisi jumlah router/hop maksimal yang dilewati paket IP

(datagram). Nilai maksimum field ini adalah 255. Setiap kali paket IP

lewat satu router, isi dari field ini dikurangi satu. Jika TTL telah habis dan

paket tetap belum sampai ke tujuan, paket ini akan dibuang dan router

terakhir akan mengirimkan paket ICMP time exceeded. Hal ini dilakukan

untuk mencegah paket IP terus menerus berada dalam network.

g. Protocol mengandung angka yang mengidentifikasikan protokol layer atas

pengguna isi data dari paket IP ini.

h. Header Checksum, berisi nilai checksum yang dihitung dari jumlah

seluruh field dari header paket IP. Sebelum dikirimkan, protokol IP

terlebih dahulu menghitung checksum dari header paket IP tersebut untuk

nantinya dihitung kembali di sisi penerima. Jika terjadi perbedaan, maka

paket ini dianggap rusak dan dibuang.

i. Source address dan destination address, isi dari masing-masing field ini

cukup jelas, yakni alamat pengirim dan alamat penerima dari datagram.

Masing-masing field terdiri dari 32 bit, sesuai panjang IP address yang

digunakan dalam internet. Destination address merupakan field yang akan

dibaca oleh setiap router untuk menentukan kemana paket IP tersebut akan

diteruskan untuk mencapai destination address tersebut. Struktur IP

address ini secara lebih jelas akan diuraikan pada bagian selanjutnya

(Purbo, 2008)

IP Address

IP address digunakan sebagai alamat dalam hubungan antar host di

internet sehingga merupakan sebuah sistem komunikasi yang universal karena

merupakan metode pengalamatan yang telah diterima di seluruh dunia. Dengan

menentukan IP address berarti kita telah memberikan identitas yang universal

bagi setiap interface komputer. Jika suatu komputer memiliki lebih dari satu

18

interface (misalkan menggunakan dua ethernet) maka kita harus memberi dua IP

address untuk komputer tersebut masing-masing untuk setiap interface nya.

Format Penulisan IP Address

IP address terdiri dari bilangan biner 32 bit yang dipisahkan oleh tanda

titik setiap 8 bitnya. Tiap 8 bit ini disebut sebagai oktet. Bentuk IP address dapat

dituliskan sebagai berikut :

xxxxxxxx.xxxxxxxx.xxxxxxxx.xxxxxxxx

Jadi IP address ini mempunyai range dari

00000000.00000000.00000000.00000000

sampai

11111111.11111111.11111111.11111111.

Notasi IP address dengan bilangan biner seperti ini susah untuk

digunakan, sehingga sering ditulis dalam 4 bilangan desimal yang masing-masing

dipisahkan oleh 4 buah titik yang lebih dikenal dengan “notasi decimal bertitik”.

Setiap bilangan desimal merupakan nilai dari satu oktet IP address. Contoh

hubungan suatu IP address dalam format biner dan desimal :

Gambar 2.3 Format IP Address

Pembagian Kelas IP Address

Jumlah IP address yang tersedia secara teoritis adalah 255x255x255x255 atau

sekitar 4 milyar lebih yang harus dibagikan ke seluruh pengguna jaringan internet

di seluruh dunia. Pembagian kelas-kelas ini ditujukan untuk mempermudah

alokasi IP address, baik untuk host/jaringan tertentu atau untuk keperluan tertentu.

IP address dapat dipisahkan menjadi 2 bagian, yakni bagian network (net ID) dan

bagian host (host ID). Net ID berperan dalam identifikasi suatu network dari

network yang lain, sedangkan host ID berperan untuk identifikasi host dalam

suatu network. Jadi, seluruh host yang tersambung dalam jaringan yang sama

19

memiliki net ID yang sama. Sebagian dari bit-bit bagian awal dari IP address

merupakan network bit/network number, sedangkan sisanya untuk host. Garis

pemisah antara bagian network dan host tidak tetap, bergantung kepada kelas

network. IP address dibagi ke dalam lima kelas, yaitu kelas A, kelas B, kelas C,

kelas D dan kelas E. Perbedaan tiap kelas adalah pada ukuran dan jumlahnya.

Contohnya IP kelas A dipakai oleh sedikit jaringan namun jumlah host yang dapat

ditampung oleh tiap jaringan sangat besar. Kelas D dan E tidak digunakan secara

umum, kelas D digunakan bagi jaringan multicast dan kelas E untuk keperluan

eksperimental. Perangkat lunak Internet Protocol menentukan pembagian jenis

kelas ini dengan menguji beberapa bit pertama dari IP Address. Penentuan kelas

ini dilakukan dengan cara berikut :

1) Kelas A

Bit pertama IP address kelas A adalah 0, dengan panjang net ID 8 bit dan

panjang host ID 24 bit. Jadi byte pertama IP address kelas A mempunyai range

dari 0-127. Jadi pada kelas A terdapat 127 network dengan tiap network dapat

menampung sekitar 16 juta host (255x255x255). IP address kelas A diberikan

untuk jaringan dengan jumlah host yang sangat besar, IP kelas ini dapat

dilukiskan pada gambar berikut ini:

Gambar 2.4. IP Addres kelas A

2) Kelas B

Dua bit IP address kelas B selalu diset 10(baca:satu nol dalam formal

biner) sehingga byte pertamanya selalu bernilai antara 128-191. Network ID

adalah 16 bit pertama dan 16 bit sisanya adalah host ID sehingga jika ada

komputer mempunyai IP address 167.205.26.161, network ID = 167.205 dan host

ID = 26.161. Pada. IP address kelas B ini mempunyai range IP dari 128.0.xxx.xxx

20

sampai 191.255.xxx.xxx, yakni berjumlah 65.255 network dengan jumlah host

tiap network 255 x 255 host atau sekitar 65 ribu host.

Gambar 2.5. IP Addres kelas B

3) Kelas C

IP address kelas C mulanya digunakan untuk jaringan berukuran kecil

seperti LAN. Tiga bit pertama IP address kelas C selalu diset 111. Network ID

terdiri dari 24 bit dan host ID 8 bit sisanya sehingga dapat terbentuk sekitar 2 juta

network dengan masing-masing network memiliki 256 host.

Gambar 2.6. IP Addres kelas C

4) Kelas D

IP address kelas D digunakan untuk keperluan multicasting. 4 bit pertama

IP address kelas D selalu diset 1110 sehingga byte pertamanya berkisar antara

224-247, sedangkan bit-bit berikutnya diatur sesuai keperluan multicast group

yang menggunakan IP address ini. Dalam multicasting tidak dikenal istilah

network ID dan host ID.

5) Kelas E

21

IP address kelas E tidak diperuntukkan untuk keperluan umum. 4 bit

pertama IP address kelas ini diset 1111 sehingga byte pertamanya berkisar antara

248-255(Mansfield,2002).

Address Khusus

Selain address yang dipergunakan untuk pengenal host, ada beberapa jenis

address yang digunakan untuk keperluan khusus dan tidak boleh digunakan untuk

pengenal host. Address tersebut adalah:

1) Network Address.

Address ini digunakan untuk mengenali suatu network pada jaringan

Internet. Misalkan untuk host dengan IP Address kelas B 167.205.9.35. Tanpa

memakai subnet, network address dari host ini adalah 167.205.0.0. Address ini

didapat dengan membuat seluruh bit host pada 2 segmen terakhir menjadi 0.

Tujuannya adalah untuk menyederhanakan informasi routing pada internet.

Router cukup melihat network address (167.205) untuk menentukan ke router

mana datagram tersebut harus dikirimkan. Analoginya mirip dengan dalam proses

pengantaran surat, petugas penyortir pada kantor pos cukup melihat kota tujuan

pada alamat surat (tidak perlu membaca seluruh alamat) untuk menentukan jalur

mana yang harus ditempuh surat tersebut.

2) Broadcast Address.

Address ini digunakan untuk mengirim/menerima informasi yang harus

diketahui oleh seluruh host yang ada pada suatu network. Seperti diketahui, setiap

datagram IP memiliki header alamat tujuan berupa IP address dari host yang akan

dituju oleh datagram tersebut. Dengan adanya alamat ini, maka hanya host tujuan

saja yang memproses datagram tersebut, sedangkan host lain akan

mengabaikannya. Bagaimana jika suatu host ingin mengirim datagram kepada

seluruh host yang ada pada network nya ? Tidak efisien jika ia harus membuat

replikasi datagram sebanyak jumlah host tujuan. Pemakaian bandwidth akan

22

meningkat dan beban kerja host pengirim bertambah, padahal isi datagram-

datagram tersebut sama. Oleh karena itu, dibuat konsep broadcast address. Host

cukup mengirim ke alamat broadcast, maka seluruh host yang ada pada network

akan menerima datagram tersebut. Konsekuensinya, seluruh host pada network

yang sama harus memiliki broadcast address yang sama dan address tersebut

tidak boleh digunakan sebagai IP address untuk host tertentu. Jadi, sebenarnya

setiap host memiliki 2 address untuk menerima datagram : pertama adalah IP

addressnya yang bersifat unik dan kedua adalah broadcast address pada network

tempat host tersebut berada. Broadcast address diperoleh dengan membuat bit-bit

host pada IP address menjadi 1. Jadi, untuk host dengan IP address 167.205.9.35

atau 167.205.240.2, broadcast addressnya adalah 167.205.255.255 (2 segmen

terakhir dari IP address tersebut dibuat berharga 11111111.11111111, sehingga

secara desimal terbaca 255.255). Jenis informasi yang dibroadcast biasanya

adalah informasi routing.

3) Multicast Address.

Kelas address A, B dan C adalah address yang digunakan untuk

komunikasi antar host, yang menggunakan datagram-datagram unicast. Artinya,

datagram/paket memiliki address tujuan berupa satu host tertentu. Hanya host

yang memiliki IP address sama dengan destination address pada datagram yang

akan menerima datagram tersebut, sedangkan host lain akan mengabaikannya.

Jika datagram ditujukan untuk seluruh host pada suatu jaringan, maka field

address tujuan ini akan berisi alamat broadcast dari jaringan yang bersangkutan.

Dari dua mode pengiriman ini (unicast dan broadcast), muncul pula mode ke tiga.

Diperlukan suatu mode khusus jika suatu host ingin berkomunikasi dengan

beberapa host sekaligus (host group), dengan hanya mengirimkan satu datagram

saja. Namun berbeda dengan mode broadcast, hanya host-host yang tergabung

dalam suatu grup saja yang akan menerima datagram ini, sedangkan host lain

tidak akan terpengaruh. Oleh karena itu, dikenalkan konsep multicast. Pada

konsep ini, setiap group yang menjalankan aplikasi bersama mendapatkan satu

23

multicast address. Struktur kelas multicast address dapat dilihat pada Gambar

berikut.

Gambar 2.7. Struktur IP Address Kelas Multicast Address

4) Unicast Address

Paket yang dikirim oleh satu host menuju sebuah host yang lain

menggunakan alamat unicast di mana pada paketnya terdapat alamat asal dan

alamt tujuan. Komunikasi ini juga disebut oneto- one. Alamat unicast dimiliki

kelas A, B dan C saja.

5) Loopback Address

Alamat IP yang dimulai dengan desimal 127 digunakan sebagai loopback

address. Alamat ini digunakan untuk menguji perangkat lunak pada komputer

atau host.

Subnetting

Untuk beberapa alasan yang menyangkut efisiensi IP address, mengatasi

masalah topologi network dan organisasi, network administrator biasanya

melakukan subnetting. Essensi dari subnetting adalah “memindahkan” garis

pemisah antara bagian network dan bagian host dari suatu IP Address. Beberapa

bit dari bagian host dialokasikan menjadi bit tambahan pada bagian network.

Address satu network menurut struktur baku dipecah menjadi beberapa

subnetwork. Cara ini menciptakan sejumlah network tambahan, tetapi mengurangi

jumlah maksimum host yang ada dalam tiap network tersebut. Router IP dapat

mengintegrasikan berbagai network dengan media fisik yang berbeda hanya jika

24

setiap network memiliki address network yang unik. Selain itu, dengan

subnetting, seorang network administrator dapat mendelegasikan pengaturan host

address seluruh departemen dari suatu perusahaan besar kepada setiap

departemen, untuk memudahkannya dalam mengatur keseluruhan network. Suatu

subnet didefinisikan dengan mengimplementasikan masking bit (subnet mask)

kepada IP address. Struktur subnetmask sama dengan struktur IP address, yakni

terdiri dari 32 bit yang dibagi atas 4 segmen. Bit-bit dari IP address yang

“ditutupi” (masking) oleh bit-bit subnet mask yang aktif dan bersesuaian akan

diinterpretasikan sebagai network bit. Bit 1 pada subnet mask berarti

mengaktifkan masking ( on ), sedangkan bit 0 tidak aktif ( off ). Sebagai contoh

kasus, mari kita ambil satu IP Address kelas A dengan nomor 44.132.1.20.

Ilustrasinya dapat dilihat gambar berikut :

Gambar 2.8 Subnetting 16 bit pada IP Address kelas A

Dengan aturan standard, nomor network IP address ini adalah 44 dan

nomor host adalah 132.1.20. Network tersebut dapat menampung maksimum lebih

dari 16 juta host yang terhubung langsung. Misalkan pada address ini akan akan

diimplementasikan subnet mask sebanyak 16 bit 255.255.0.0.( Hexa =

25

FF.FF.00.00 atau Biner = 11111111.11111111.00000000.00000000 ). Perhatikan

bahwa pada 16 bit pertama dari subnet mask tersebut berharga 1, sedangkan 16 bit

berikutnya 0. Dengan demikian, 16 bit pertama dari suatu IP address yang

dikenakan subnet mask tersebut akan dianggap sebagai network bit. Nomor

network akan berubah menjadi 44.132 dan nomor host menjadi 1.20. Kapasitas

maksimum host yang langsung terhubung pada network menjadi sekitar 65 ribu

host. Subnet mask di atas identik dengan standard IP address kelas B. Dengan

menerapkan subnet mask tersebut pada satu network kelas A, dapat dibuat 256

network baru dengan kapasitas masing-masing subnet setara network kelas B.

Penerapan subnet yang lebih jauh seperti 255.255.255.0 ( 24 bit ) pada kelas A

akan menghasilkan jumlah network yang lebih besar ( lebih dari 65 ribu network )

dengan kapasitas masing-masing subnet sebesar 256 host. Network kelas C juga

dapat dibagi-bagi lagi menjadi beberapa subnet dengan menerapkan subnet mask

yang lebih tinggi seperti untuk 25 bit (255.255.255.128), 26 bit

(255.255.255.192), 27 bit ( 255.255.255.224) dan seterusnya.

Subnetting dilakukan pada saat konfigurasi interface. Penerapan subnet

mask pada IP address akan mendefinisikan 2 buah address baru, yakni network

address dan broadcast address. Network address didefinisikan dengan menset

seluruh bit host berharga 0, sedangkan broadcast address dengan menset bit host

berharga 1. Seperti yang telah dijelasakan pada bagian sebelumnya, network

address adalah alamat network yang berguna pada informasi routing. Suatu host

yang tidak perlu mengetahui address seluruh host yang ada pada network

yanglain. Informasi yang dibutuhkannya hanyalah address dari network yang akan

dihubungi serta gateway untuk mencapai network tersebut. Ilustrasi mengenai

subnetting, network address dan broadcast address dapat dilihat pada tabel

dibawah. Dari tabel dapat disimpulkan bagaimana nomor network standard dari

suatu IP address diubah menjadi nomor subnet / subnet address melalui

subnetting.

Tabel 2. 1 Beberapa kombinasi IP address, netmask dan network address

26

IP

ADDRESS

NETWORK

ADDRESS

STANDAR

T

SUBNET

MASK

INTERPRESTAS

I

BROADCAST

ADDRESS

44.132.1.2

0

44.0.0.0 255.255.0.0 Host 1.20 pada

subnet 44.132.0.0

44.132.255.25

5

81.150.2.3 81.0.0.0 255.255.255.

0

Host 3 pada

subnet 81.150.2.0

81.150.2.0

Subnetting hanya berlaku pada network lokal. Bagi network di luar

network lokal, nomor network yang dikenali tetap nomor network standard

menurut kelas IP address.

Subnet Mask

subnet mask yang disebut juga sebagai sebuah address mask sebagai sebuah

nilai biner 32-bit yang digunakan untuk membedakan network identifier dari host

identifier di dalam sebuah alamat IP. Bit-bit subnet mask yang didefinisikan,

adalah sebagai berikut:

1) Semua bit yang ditujukan agar digunakan oleh network identifier diset ke

nilai 1.

2) Semua bit yang ditujukan agar digunakan oleh host identifier diset ke nilai 0.

Setiap host di dalam sebuah jaringan yang menggunakan TCP/IP

membutuhkan sebuah subnet mask meskipun berada di dalam sebuah jaringan

dengan satu segmen saja. Entah itu subnet mask default (yang digunakan ketika

memakai network identifier berbasis kelas) ataupun subnet mask yang

dikustomisasi (yang digunakan ketika membuat sebuah subnet atau

supernet(Manfield,2002).

Representasi Subnet Mask

27

Ada dua metode yang dapat digunakan untuk merepresentasikan subnet mask,

yakni:

1) Notasi Desimal Bertitik

2) Notasi Panjang Prefiks Jaringan

Desimal Bertitik

Sebuah subnet mask biasanya diekspresikan di dalam notasi desimal

bertitik (dotted decimal notation), seperti halnya alamat IP. Setelah semua bit

diset sebagai bagian network identifier dan host identifier, hasil nilai 32-bit

tersebut akan dikonversikan ke notasi desimal bertitik. Perlu dicatat, bahwa

meskipun direpresentasikan sebagai notasi desimal bertitik, subnet mask bukanlah

sebuah alamat IP.

Subnet mask default dibuat berdasarkan kelas-kelas alamat IP dan

digunakan di dalam jaringan TCP/IP yang tidak dibagi ke alam beberapa subnet.

Tabel di bawah ini menyebutkan beberapa subnet mask default dengan

menggunakan notasi desimal bertitik. Formatnya adalah:

<alamat IP www.xxx.yyy.zzz>, <subnet mask www.xxx.yyy.zzz>

Tabel 2.2 Subnet format decimal bertitik

Kelas alamat Subnet mask (biner) Subnet mask (desimal)

Kelas A 11111111.00000000.00000000.00000000 255.0.0.0

Kelas B 11111111.11111111.00000000.00000000 255.255.0.0

Kelas C 11111111.11111111.11111111.00000000 255.255.255.0

Perlu diingat, bahwa nilai subnet mask default di atas dapat dikustomisasi

oleh administrator jaringan, saat melakukan proses pembagian jaringan

28

(subnetting atau supernetting). Sebagai contoh, alamat 138.96.58.0 merupakan

sebuah network identifier dari kelas B yang telah dibagi ke beberapa subnet

dengan menggunakan bilangan 8-bit. Kedelapan bit tersebut yang digunakan

sebagai host identifier akan digunakan untuk menampilkan network identifier

yang telah dibagi ke dalam subnet. Subnet yang digunakan adalah total 24 bit

sisanya (255.255.255.0) yang dapat digunakan untuk mendefinisikan custom

network identifier. Network identifier yang telah di-subnet-kan tersebut serta

subnet mask yang digunakannya selanjutnya akan ditampilkan dengan

menggunakan notasi sebagai berikut:

138.96.58.0 , 255.255.255.0

Representasi panjang prefiks (prefix length) dari sebuah subnet mask

Ada sebuah cara yang digunakan untuk merepresentasikan sebuah subnet

mask dengan menggunakan bit yang mendefinisikan network identifier sebagai

sebuah network prefix dengan menggunakan notasi network prefix seperti

tercantum di dalam tabel di bawah ini.

Tabel 2.4 Prefix

Kelas

alamat Subnet mask (biner)

Subnet mask

(desimal)

Prefix

Length

Kelas A 11111111.00000000.00000000.00000000 255.0.0.0 /8

Kelas B 11111111.11111111.00000000.00000000 255.255.0.0 /16

Kelas C 11111111.11111111.11111111.00000000 255.255.255.0 /24

29

Sebagai contoh, network identifier kelas B dari 138.96.0.0 yang memiliki

subnet mask 255.255.0.0 dapat direpresentasikan di dalam notasi prefix length

sebagai 138.96.0.0/16.

Karena semua host yang berada di dalam jaringan yang sama maka semua

host yang berada di dalam jaringan yang sama harus menggunakan network

identifier yang sama yang didefinisikan oleh subnet mask yang sama pula.

Sebagai contoh, notasi 138.23.0.0/16 tidaklah sama dengan notasi 138.23.0.0/24,

dan kedua jaringan tersebut tidak berada di dalam ruang alamat yang sama.

Network identifier 138.23.0.0/16 memiliki range alamat IP yang valid mulai dari

138.23.0.1 hingga 138.23.255.254; sedangkan network identifier 138.23.0.0/24

hanya memiliki range alamat IP yang valid mulai dari 138.23.0.1 hingga

138.23.0.254 (Lukas, 2006).

Menentukan alamat Network Identifier

Untuk menentukan network identifier dari sebuah alamat IP dengan

menggunakan sebuah subnet mask tertentu, dapat dilakukan dengan menggunakan

sebuah operasi matematika, yaitu dengan menggunakan operasi logika

perbandingan AND (AND comparison). Di dalam sebuah AND comparison, nilai

dari dua hal yang diperbandingkan akan bernilai true hanya ketika dua item

tersebut bernilai true; dan menjadi false jika salah satunya false. Dengan

mengaplikasikan prinsip ini ke dalam bit-bit, nilai 1 akan didapat jika kedua bit

yang diperbandingkan bernilai 1, dan nilai 0 jika ada salah satu di antara nilai

yang diperbandingkan bernilai 0.

Cara ini akan melakukan sebuah operasi logika AND comparison dengan

menggunakan 32-bit alamat IP dan dengan 32-bit subnet mask, yang dikenal

dengan operasi bitwise logical AND comparison. Hasil dari operasi bitwise alamat

IP dengan subnet mask itulah yang disebut dengan network identifier.

Contoh:

30

Alamat IP 10000011 01101011 10100100 00011010 (131.107.164.026)

Subnet Mask 11111111 11111111 11110000 00000000 (255.255.240.000)

------------------------------------------------------------------ AND

Network ID 10000011 01101011 10100000 00000000 (131.107.160.000)

Routing

adalah sebuah proses untuk meneruskan paket-paket jaringan dari satu jaringan ke

jaringan lainnya melalui sebuah internetwork. Routing juga dapat merujuk kepada

sebuah metode penggabungan beberapa jaringan sehingga paket-paket data dapat

hinggap dari satu jaringan ke jaringan selanjutnya. Untuk melakukan hal ini,

digunakanlah sebuah perangkat jaringan yang disebut sebagai router. Router-

router tersebut akan menerima paket-paket yang ditujukan ke jaringan di luar

jaringan yang pertama, dan akan meneruskan paket yang ia terima kepada router

lainnya hingga sampai kepada tujuannya. Fungsi ini merupakan fungsi terpenting

dari Internet Protocol (IP). Sebagai protokol yang bersifat connectionless, proses

routing sepenuhnya ditentukan oleh jaringan. Pengirim tidak memiliki kendali

terhadap paket yang dikirimkannya untuk bisa mencapai tujuan. Router-router

pada jaringan TCP/IP lah yang sangat menentukan dalam penyampaian datagram

dari penerima ke tujuan (Dharma Oetomo,2003).

Static Routing

Static routing adalah salah satu dari mekanisme koordinasi routing dimana

menggunakan static routing dalam sebuah jaringan berarti mengisi setiap entry

tebel routing di setiap router yang berada di jaringan tersebut. Bisa juga disebut

dengan pengaturan routing paling sederhana yang dapat dilakukan pada jaringan

komputer.

Table Routing

Suatu algoritma perutean menggunakan table perutean yang menyimpan

informasi mengenai kemungkinan tujuan yang dapat dicapai & cara

pencapaiannya. Karena baik host maupun gateway merutekan datagram, maka

31

keduanya memiliki tabel perutean. Untuk pengefisienan table routing tidak semua

informasi mengenai kemungkinan tujuan akan disimpan. Alamat IP-pun tidak

perlu ditulis lengkap Biasanya tabel routing terdiri dari pasangan network &

gateway (N,G) dimana N menunjukkan jaringan tujuan & G merupakan gateway

berikutnya untuk sampai di jaringan N. Tabel perutean akan selalu menunjuk ke

gateway yang dapat ditempuh langsung dalam satu jaringan. Semua gateway yang

terdaftar di mesin tabel perutean mesin M harus terletak dalam satu jaringan.

Ketika suatu datagram akan meninggalkan mesin M makan perangkat lunak IP

akan mencari alamat IP tujuan dan menggunakan bagian networknya untuk

membuat keputusan perutean, pemilihan gateway dan pengiriman secara

langsung.

Gambar 2.9 jaringan dengan 3 router.

Ada 4 jaringan dengan 3 gateway yang menghubungkannya. Pada gambar

di atas bila

gateway G memiliki tabel perutean maka berisi :

Tabel 2.5 tabel routing untuk gambar 2.9

Ukuran tabel routing tergantung pada jumlah jaringan yang terhubung.

Kapasitasnya akan bertambah jika jumlah jaringan yang terhubung bertambah

tanpa tergantung pada host yang terhubung. Metode lain untuk menghemat ukuran

tabel routing adalah menjadikan masukkan-masukkan tertentu dalam bentuk

default. Prinsip dari metode ini : perangkat lunak IP akan melihat dahulu isi tabel

routing untuk jaringan tujuan, jika tidak ada jalur yang terlihat dalam tabel maka

32

dikirimkan datagram ke default gateway. Metode ini sangat berguna untuk

jaringan dengan jumlah alamat lokal tidak terlalu banyak & hanya satu koneksi

menuju internet(Lukas,2006).

Protokol ICMP

Definisi dan karakteristik

ICMP (Internet Control Message Protocol) adalah protokol yang bertugas

mengirimkan pesan-pesan kesalahan dan kondisi lain yang memerlukan perhatian

khusus. Pesan / paket ICMP dikirim jika terjadi masalah pada layer IP (Mulia,

2005)

Karakteristik dari ICMP adalah :

a. ICMP merupakan bagian internal dari IP

b. ICMP digunakan untuk menyediakan feedback tentang beberapa error

pada sebuah proses datagram.

c. Tidak ada respon ICMP yang dikirimkan untuk menghindari adanya

perulangan tak terbatas, kecuali respon dari query message

Timbulnya ICMP

Gambar 2.10 Timbulnya ICMP

H0 melakukan pengiriman paket kepada H1 dan terdapat masalah pasa

Router R1 maka pesan ICMP dibangkitkan oleh router R1, sebagai respon dari

33

pesan yang dikirimkan dari H0 ke H1 dan ICMP message dikembalikan ke H0

(Fairhurst, 2008)

ICMP Message

ICMP message dikirimkan didalam IP datagram. Format ICMP message

dapat dilihat pada gambar dibawah ini. Dari gambar terlihat bahwa nomor

protokol selalu 1 (ICMP) dan Type of Service selalu nol.

Gambar 2.11 Format ICMP Message

ICMP error message

Setiap ICMP error message terdiri dari Internet Header (IP) dan

sekurangnya 8 data octet (byte) pada datagram. Pada field Type menspesifikasikan

tipe dari message, sementara error code pada datagram dilaporkan oleh ICMP

message pada field Code. Pengertian setiap code bergantung dari tipe message.

Tabel 2.6 Penjelasan setiap tipe dan code ICMP

KODE KETERANGAN

0 Echo reply

3 Destination unrecable

8 Echo request

Pada kondisi normal protokol IP berjalan baik. Namun ada beberapa

kondisi dimana koneksi IP terganggu, misalnya karena router yang crash,

putusnya kabel atau matinya host tujuan. Pada saat ini ICMP berperan membantu

menstabilkan kondisi jaringan. Hal ini dilakukan dengan cara memberikan pesan-

pesan tertentu, sebagai respon atas kondisi tertentu yang terjadi pada jaringan

tersebut.

34

Contoh diatas hanya sebagian dari jenis pesan ICMP. Ada dua tipe pesan

yang dapat dihasilkan oleh ICMP yaitu ICMP error message dan ICMP query

message. ICMP error message sesuai namanya dihasilkan jika terjadi kesalahan

pada jaringan. Sedangkan ICMP query message ialah jenis pesan yang dihasilkan

oleh protokol ICMP jika pengirim paket menginginkan informasi tertentu yang

berkaitan dengan kondisi jaringan.

ICMP error message dibagi menjadi beberapa jenis diantaranya :

Destination unreachable, Pesan ini dihasilkan oleh router jika pengiriman

paket mengalami kegagalan akibat masalah putusnya jalur, baik secara fisik

maupun secara logic. Destination unreachable ini dibagi menjadi beberapa tipe.

Beberapa tipe yang penting adalah:

a. Network unreachable, jika jaringan tujuan tak dapat dihubungi.

b. Host unreachable, jika host tujuan tak bisa dihubungi.

Gambar 2.12 Destination unreachable

Gambar diatas menunjukkan router yang menerima paket yang tidak dapat

dikirim. Paket tidak terkirim karena tidak mengetahui jalur ke tujuan. Oleh sebab

itu, router mengirimkan pesan ICMP host unreachable ke asal.

35

Gambar 2.13 Pesan destination unreachable

Gambar di atas menunjukkan header pesan destination unreachable. Nilai

3 dari field tipe menunjukkan pesan destination unreachable. Nilai kode

menunjukkan alasan paket unreachable. nilai code 0 berarti jaringan

unreachable.

Tabel 2.7 Nilai kode untuk pesan destination unreachable

KODE KETERANGAN

0 Net unrecable

1 Host unrecable

ICMP Query Messages

Protokol ICMP dapat digunakan untuk melakukan testing ke tujuan.

Gambar di bawah menunjukkan pesan echo request ke device tujuan. Jika tujuan

menerima echo request ICMP, ia memformulasikan pesan echo reply mengirim

balik ke asal. Jika pengirim menerima echo reply, ini berarti bahwa tujuan dapat

dicapai menggunakan protokol IP.

Gambar 2.14. Echo request dan echo reply

36

Gambar 2.15 pesan echo request dan echo reply ICMP

Gambar di atas menunjukkan format pesan echo request ICMP dan echo

reply. Tipe yang cocok dan nomor kode ditunjukkan di tiap-tiap tipe pesan. Field

identitas dan field sequence number sifatnya unik untuk pesan echo request dan

echo reply. Field-field itu digunakan mencocokkan echo reply dengan echo

request. Field data berisi informasi tambahan yang mungkin bagian dari echo

reply atau echo request. (CCNA 8, 2008)

Router

Router adalah alat yang dapat menghubungkan dua atau lebih jaringan

komputer yang berbeda. Pada dasarnya router adalah sebuah alat pada jaringan

komputer yang bekerja di network layer pada lapisan OSI. Pada router terdapat

routing table yaitu tabel yang berisi alamat-alamat jaringan yang dibutuhkan

untuk menentukan tujuan dari paket-paket data yang akan

dilewatkan(Mansfield,2003).

2.11. Packet Internet Groper (PING)

Adalah sebuah program utilitas yang digunakan untuk memeriksa

konektivitas jaringan berbasis teknologi Transmission Control Protocol/Internet

Protocol (TCP/IP). Dengan menggunakan utilitas ini, dapat diuji apakah sebuah

komputer terhubung dengan komputer lainnya. Hal ini dilakukan dengan cara

mengirim sebuah paket kepada alamat IP yang hendak diuji coba konektivitasnya

dan menunggu respons darinya. Nama "ping" datang dari sonar sebuah kapal

selam yang sedang aktif, yang sering mengeluarkan bunyi ping ketika

menemukan sebuah objek(Pete, 2001)

37

2.11.1 Ping bekerja dengan mengirimkan sebuah paket

Paket yang dimaksud disebut dengan Internet Control Message Protocol

(ICMP) echo request. Paket ICMP ini biasanya digunakan untuk mengirimkan

informasi tentang kondisi jaringan antara dua host (komputer). Jika sebuah host

menerima echo request ini, dia harus merespon dengan mengirimkan echo reply,

dengan menempatkan echo request ke bagian data pada echo reply. Penggunaan

ping cukup sederhana, kita tinggal mengetikkan : ping nama host, dimana nama

host adalah nama atau nomor IP dari host yang kita tuju. Banyak sekali versi dari

ping, tetapi jika anda menggunakan ping milik Linux, maka output nya akan

menjadi seperti berikut :

$ ping www.silvia.com

PING silvia.com (198.168.0.2): 56 data bytes

64 bytes from 198.168.0.2: icmp_seq=0 ttl=253 time=0.398 ms

64 bytes from 198.168.0.2: icmp_seq=1 ttl=253 time=0.552 ms

64 bytes from 198.168.0.2: icmp_seq=2 ttl=253 time=0.554 ms

64 bytes from 198.168.0.2: icmp_seq=3 ttl=253 time=0.553 ms

64 bytes from 198.168.0.2: icmp_seq=4 ttl=253 time=0.554 ms

64 bytes from 198.168.0.2: icmp_seq=5 ttl=253 time=0.551 ms

64 bytes from 198.168.0.2: icmp_seq=6 ttl=253 time=0.552 ms

64 bytes from 198.168.0.2: icmp_seq=7 ttl=253 time=0.554 ms

64 bytes from 198.168.0.2: icmp_seq=8 ttl=253 time=0.554 ms

64 bytes from 198.168.0.2: icmp_seq=9 ttl=253 time=0.553 ms

^C

----localhost PING Statistics----

10 packets transmitted, 10 packets received, 0% packet loss

round-trip min/avg/max = 0.398/0.537/0.554 ms $

Proses yang terjadi ketika kita melakukan ping ke www.silvia.com adalah

kita mengirim satu paket ICMP echo request, setiap detik ke host tersebut. Ketika

program ping kita memperoleh echo reply dari host yang kita tuju

(www.silvia.com), dia akan mencetak respon tersebut ke layar yang

38

menunjukkan ke kita beberapa informasi : yang pertama adalah nomor IP dari

mana ping memperoleh echo reply, biasanya IP ini adalah IP dari host yang kita

tuju (www.silvia.com), yang kedua adalah nomor urut (ICMP sequence), yang

dimulai dari 0 dan seterusnya, yang ketiga adalah Time To Live (TTL) dan yang

terakhir adalah berapa mili detik waktu yang diperlukan untuk program ping

mendapatkan balasan. Nomor urut yang didapat menandakan paket ping yang

keberapa yang dibalas, jika nomor yang didapat tidak berurutan, berarti ada paket

yang drop, dengan kata lain entah itu echo request atau echo reply hilang di

tengah jalan. Jika jumlah paket yang hilang sedikit (kurang dari satu persen), hal

ini masih normal. Tapi jika paket yang hilang banyak sekali, berarti ada masalah

pada koneksi jaringan kita.

Informasi berikutnya adalah Time To Live, setiap paket data yang

dikirimkan melalui jaringan memiliki informasi yang disebut TTL, biasanya TTL

ini diisi dengan angka yang relatif tinggi, (paket ping memiliki TTL 255). Setiap

kali paket tersebut melewati sebuah router maka angka TTL ini akan dikurangi

dengan satu, jika TTL suatu paket akhirnya bernilai 0, paket tersebut akan di drop

atau dibuang oleh router yang menerimanya Kegunaan utama dari TTL ini

supaya paket-paket data yang dikirim tidak ‘hidup’ selamanya di dalam jaringan.

Kegunaan yang lain, dengan informasi ini kita dapat mengetahui kira-kira berapa

router yang dilewati oleh paket tersebut, dalam hal ini 255 dikurangi dengan N,

dimana N adalah TTL yang kita lihat pada echo reply.

Jika TTL yang kita dapatkan sewaktu kita melakukan ping berbeda-beda,

ini menandakan bahwa paket-paket ping yang kita kirim berjalan melewati router

yang berbeda-beda, hal ini menandakan koneksi yang tidak baik.

Informasi waktu yang diberikan oleh ping adalah waktu perjalanan pulang

pergi ke remote host yang diperlukan oleh satu paket. Satuan yang dipakai adalah

mili detik, semakin kecil angka yang dihasilkan, berarti semakin baik (baca :

cepat) koneksinya. Waktu yang dibutuhkan suatu paket untuk sampai ke host

tujuan disebut dengan latency. Jika waktu pulang pergi suatu paket hasil ping

menunjukkan variasi yang besar (diatas 100) itu berarti koneksi kita ke host

39

tersebut jelek. Tetapi jika selisih tersebut hanya terjadi pada sejumlah kecil paket,

hal tersebut masih dapat ditoleransi.

Untuk menghentikan proses ping, tekan Ctrl+C, setelah itu ping akan

mencetak informasi tentang berapa paket yang telah dikirimkan, berapa yang

diterima, persentasi paket yang hilang dan angka maksimum, minimum serta

rata-rata dari waktu yang dibutuhkan oleh paket tersebut untuk melakukan

perjalanan pulang pergi. Seperti yang anda lihat, ping berguna untuk melakukan

tes konektivitas pada jaringan dan untuk memperkirakan kecepatan

koneksi(Humris, 2008).

2.11.2 Contoh proses pengiriman data

Gambar 2.16 Jaringan 1 router

Pada contoh ini, seorang user di PC1 1 melakukan ping ke alamat IP PC2

40

Gambar 2.17 Hasil perintah PING

Mari kita cermati langkah demi langkah perjalanan datanya:

Tabel 2.8 proses PING

N0 Node Activity

0 PC1 Preparing to send ICMP (Ping) packet

Keterangan:

Persiapan, 1. Internet Control Message Protocol (ICMP)

menciptakan sebuah payload (data) echo request.

ICMP menyerahkan payload tersebut ke Internet Protocol (IP),

yang lalu menciptakan sebuah paket. Paling sedikit, paket ini berisi

sebuah alamat asal IP, sebuah alamat tujuan IP. Setelah paket dibuat,

IP akan menentukan apakah alamat IP tujuan ada di network local

atau network remote(diluar jaringan)

Dengan membandingkan net ID kedua alamat

Desimal Biner

IP Asal 192.168.0.1 11000000 10101000 00000000

00000001

Logika

and

& &

Subnet

asal

255.255.25

5.0

11111111 11111111 11111111

00000000

Net Id 192.168.0.0 11000000 10101000 00000000

00000000

Desimal Biner

IP

Tujuan

192.168.10.

1

11000000 10101000 00001010

00000001

Logika

and

& &

41

Net ID berbeda berarti bukan satu jaringan(local network)

Subnet

asal

255.255.255

.0

11111111 11111111 11111111

00000000

Net Id 192.168.10.

0

11000000 10101000 00001010

00000000

1 PC1 Route found in the routing table

0.0.0.0 | 0.0.0.0 | 192.168.0.10

Keterangan:

Karena IP menentukan bahwa ini adalah permintaan untuk

network remote, maka paket perlu dikirimkan ke default gateway

agar paket dapat di route ke network remote. Registry di Windows

dibaca untuk mencari default gateway yang telah di konfigurasi.

2 PC1 Unable to find MAC Address in ARP Cache for 192.168.0.10

Keterangan:

Setelah itu, cache ARP dicek untuk melihat apakah alamat IP dari

default gateway sudah pernah di resolved (diterjemahkan) ke sebuah

alamat hardware. Tidak ditemukan MAC dari ARP Cache untuk

192.168.0.10

3 PC1 Sending ARP_REQUEST

Arp Layer

Source IP: 192.168.0.1

Source MAC: 00-50-BA-74-7C-E6

Destination IP: 192.168.0.10

Keterangan:

PC1 mengirimkan ARP request untuk mendapatkan MAC dari

192.168.0.10

42

4 Router 0 Received ARP_REQUEST packet from 192.168.0.1

Keterangan:

Router 0 menerima paket ARP request dari 192.168.0.1

5 Router 0 Sending ARP_REPLY

Source MAC: 00-E0-A3-11-7D-ED

Source IP: 192.168.0.1

Destination IP: 192.168.0.10

Keterangan :

Router melakukan respon pada permintaan tersebut dan

menyerahkan alamat hardware dari ethernet 1, dan host akan

menyimpan (cache) alamat ini. Router juga akan melakukan cache

alamat hardware dari PC 1 di ARP cache nya.

6 PC1 Received ARP_REPLY packet from 192.168.0.10

Keterangan:

Router 0 Menerima ARP_REQUEST paket dari 192.168.0.1

7 PC1 IP does not exists in ARP cache

Adding 192.168.0.10 : 00-E0-A3-11-7D-ED to ARP cache

Keterangan:

PC1 memasukan 192.168.0.1 kedalam ARP cache

8 PC1 Sending ICMP (Ping) packet

ICMP Layer

Type: 8 (echo request), Code: 0

IP Layer

Protocol: (ICMP), Header Length: 20

Header Checksum: 0x83BD, Time To Live: 128

Source IP: 192.168.0.1

43

Destination IP: 192.168.10.1

Keterangan:

Paket ICMP echo request dikirimkan dari 192.168.0.1 kepada

192.168.10.1

9 Router 0 Received ICMP (Ping) request packet from 192.168.0.1

Keterangan:

Router 1 menerima ICMP request dari 192.168.01

10 Router 0 Route found in the routing table

192.168.10.0 | 255.255.255.0 | 192.168.10.10

Keterangan:

Pada tabel routing ditemukan 192.168.10.0/255.255.255.0 dan

192.168.10.10 untuk sebagai gatewaynya

Pada router terdapat entry routing yang otomatis dibuat pada

saat mengisi ethernet router yaitu, route ke jaringan- jaringan yang

terkoneksi langsung dengan ethernetnya.

Proses pembacaan tabel routing:

1. Jika tujuan datagram tidak terletak dalam satu jaringan,

periksa semua ethernet router dan bandingkan dengan

alamat IP tujuan datagram.

2. Jika ada entri yang sama, kirim frame menuju host asal.

3. jika tidak terdapat entri host yang cocok pada tabel routing,

gunakan alamat tujuan datagram yang telah di-mask pada

langkah 1 untuk mencari kesamaan di tabel routing. Periksa

apakah ada network/subnetwork di tabel routing yang sama

dengan alamat network tujuan datagram. Jika ada entri yang

sama, kirim frame ke router menuju network/subnetwork

tersebut.

44

Contoh perhitungan manualnya sebagai berikut:

Jika tujuan datagram adalah 192.168.10.10 dan terdapat

entry 192.168.10.0/255.255.255.0 maka menghitung

broadcast didapatakan 192.168.10.255 maka dicek apakah

tujuan datagram berada dalam range 192.168.10.0 hingga

192.168.10.255. dan begitu juga untuk entry selanjutnya.

4. jika tidak terdapat entri host ataupun entri

network/subnetwork yang sesuai dengan tujuan datagram,

host mengirimkan frame ke router default dan menyerahkan

proses proses routing selanjutnya kepada router default.

11 Router 0 Found MAC adddress in ARP Cache

192.168.10.1 -> 00-E0-A3-6B-95-4D

Keterangan:

Ditemukan Mac address di ARP cache router 0 karena sebelumnya

pernah melakukan ARP(proses pencarian sama seperti langkah 3)

12 Router 0 Forwarding ICMP (Ping) packet through port 2

ICMP Layer

Type: 8 (echo request), Code: 0

IP Layer

Protocol: (ICMP), Header Length: 20

Header Checksum: 0x83BD, Time To Live: 127

Source IP: 192.168.0.1

Destination IP: 192.168.10.1

Keterangan :

ICMP echo request oleh router 0 diteruskan kepada 192.168.10.1

13 PC2 Received ICMP (Ping) packet from 192.168.0.1

Keterangan:

PC2 menerima paket ICMP dari 192.168.0.1

14 PC2 Preparing to send ICMP (Ping) reply packet

45

Keterangan:

PC2 akan melakukan proses yang sama seperti PC 1 dengan

mengirimkan echo reply sebagai balasan dari echo request yang

diterima

15 PC2 Route found in the routing table

0.0.0.0 | 0.0.0.0 | 192.168.10.10 | 192.168.10.1

16 PC2 Unable to find MAC Address in ARP Cache for 192.168.10.10

17 PC2 Sending ARP_REQUEST

Source IP: 192.168.0.1

Source MAC: 00-E0-A3-6B-95-4D

Destination IP: 192.168.0.1

18 Router 0 Received ARP_REQUEST packet from 192.168.10.1

19 Router 0 Sending ARP_REPLY

Source MAC: 00-E0-A3-6B-95-4D

Source IP: 192.168.10.10

Destination IP: 192.168.10.10

20 PC2 Received ARP_REPLY packet from 192.168.10.10

21 PC2 IP does not exists in ARP cache

Adding 192.168.10.10 : 00-E0-A3-6B-95-4D to ARP cache

22 PC2 Send ICMP (Ping) reply packet

ICMP Layer

Type: 8 (echo reply), Code: 0

IP Layer

Protocol: (ICMP), Header Length: 20

Header Checksum: 0x83BD, Time To Live: 128

Source IP: 192.168.10.1

Destination IP: 192.168.0.1

23 Router 0 Received ICMP (Ping) reply packet from 192.168.10.1

24 Router 0 Route found in the routing table

46

192.168.0.0 | 255.255.255.0 | 192.168.0.10 | 192.168.0.10

25 Router 0 Found MAC adddress in ARP Cache

192.168.0.1 -> 00-E0-A3-11-7D-ED

26 Router 0 Forwarding ICMP (Ping) packet through port 1

ICMP Layer

Type: 8 (echo request), Code: 0

IP Layer

Protocol: (ICMP), Header Length: 20

Header Checksum: 0x83BD, Time To Live: 127

Source IP: 192.168.10.1

Destination IP: 192.168.0.1

27 PC1 Received ICMP (Ping) reply packet from 192.168.10.1

2.12 Macromedia Flash 8

Flash adalah salah satu program pembuatan animasi yang sangat handal.

Kehandalan Macromedia Flash 8 dibandingkan dengan program yang lain adalah

dalam hal ukuran file dari hasil animasinya yang kecil. Untuk itu animasi yang

dihasilkan oleh program Flash banyak digunakan untuk membuat sebuah web atau

sebuah profile company agar menjadi tampil lebih interaktif(herlambang,2007).

2.13 ActionScript

ActionScript adalah bahasa yang menjembatani antara bahasa yang kita

kenal dengan bahasa yang dikenal oleh Flash. ActionScript mengijinkan kita

membuat instruksi berorieantasi action (lakukan perintah) dan orientasi

berorientasi logic atau analisa masalah sebelum melakukan perintah

Sama seperti bahasa pemrograman lain ActionScript berisi banyak elemen

yang berbeda-beda strukturnya sehingga harus ada rangkain yang benar agar

perintah sesuai dengan yang kita inginkan. (herlambang,2007).

BAB III

ANALISA DAN PERANCANGAN SISTEM

3.1. Analisa Sistem

3.1.1. Analisa Masalah

Jaringan komputer adalah mata kuliah yang penting, hal ini dikarenakan

hampir setiap perusahaan, instansi pemerintahan dan universitas menggunakan

jaringan komputer agar supaya dapat dilakukan komunikasi data antar setiap

komputer disetiap unit kerja, sehingga dirasa perlu untuk mengajarkan jaringan

komputer ini secara lebih mendalam, agar lulusan dapat menguasai teknik - teknik

dan ilmu-ilmu mengenai pembangunan sebuah jaringan.

Alasan utama dari pembuatan aplikasi ini adalah agar mahasiswa memiliki

gambaran yang nyata mengenai bagaimana setting sebuah jaringan, seperti

mengisi IP address, Net Id, subnet/prefix, default gateway selain itu juga

bagaimana langkah yang benar untuk setting router, mengetahui atribut atribut

yang digunakan untuk entry routing table hingga dapat menguji koneksi yang

telah dibangun menggunakan uji konektivitas, dan akan dimunculkan jalanya

paket data pada saat pengiriman data, sehingga mahasiswa dapat mengetahui

router atau jaringan mana saja yang dilewati untuk sampai pada IP yang dituju.

Pada sistem yang akan dibangun ini yang dimaksud router mensimulasikan

sebuah PC yang di upgrade menjadi multi homed host dan form yang akan

ditampilkan pada saat setting adalah IP dan subnet/prefix dan sebuah jaringan

(network) disimulasikan sebagai sebuah benda seperti halnya router dan PC

47

48

sehingga user dapat membuat, setting dan menghapus, sehingga network mutlak

dibutuhkan untuk menhubungkan antar device (router dan PC)

3.2. Konsep

Tahap konsep (concept) adalah tahap penentuan tujuan, termasuk

identifikasi audiens dalam hal ini adalah user yang dituju, macam aplikasi, tujuan

dan spesifikasi aplikasi secara umum. Dalam tahap inilah dasar aturan

perancangan ditentukan. Adapun deskripsi konsep dari sistem dapat dilihat pada

tabel berikut ini:

Tabel 3.1. Deskripsi konsep sistem

Judul Simulasi routing

User Mahasiswa teknik Informatika yang

sudah memahami dasar-dasar routing.

Durasi Sesuai kebutuhan audiens atau user

Image Menggunakan image PNG dan GIF

Video Tidak menggunakan

Audio Tidak menggunakan

Animasi Animasi jalanya paket data

Interaktif Setting IP,mengisi tabel routing dan

menguji konektivitas

3.3. Desain Sistem

Pada tahap ini akan dibuat bagian bagian penting yang digunakan sebagai

dasar pembuatan program,antara lain sebagai berikut:

49

3.3.1.Flowchart Sistem

Flowchart program merupakan bagan yang menjelaskan secara rinci

langkah-langkah dari proses program secara logika. Berikut ini flowchart dari

aplikasi yang dikembangkan adalah sebagai berikut :

Gambar 3.1 Flowchart sistem

3.3.2.Flowchart Proses Uji Konektivitas ( echo request)

Flowchart proses Uji Kenektivitas (echo request) disajikan pada gambar

berikut:

50

Gambar 3.2 Flowchart Proses Uji Konektivitas (echo request)

Penjelasan:

Pada uji konektivitas ada dua proses penting, yang pertama proses

pengiriman paket (echo request) dan jika echo request tersampaikan dan diterima

tujuan maka selanjutnya proses jawaban dari destination(echo reply), pada

dasarnya cara kerja keduanya sama dan hasil dari masing-masing proses yang

51

akan menentukan hasil akhir dari proses uji konektivitas secara keseluruhan. Pada

program bantu ini tidak membahas mekanisme kerja ARP maka proses ARP akan

digabungkan dengan pengiriman ICMP.

Nilai input yang dimasukan adalah IP destination, kemudian menghitung

Net ID dari destination dengan cara IP destination di-And-kan dengan subnet

source. Kemudian proses selanjutnya mengambil IP address, dan subnet dari PC

source yang digunakan untuk input proses hitung Net ID source apabila hasil

perhitungan Net ID source dan Net ID destination sama berati satu network,

proses pencarian dilakukan dalam network itu sendiri.

Jika dari hasil perhitungan didapatkan Net ID yang berbeda, itu berarti

jaringan berada diluar network dan dibutuhkan router, proses selanjutnya

membaca gateway pada PC asal kemudian proses mencari router, jika gateway

kosong atau tidak ditemukan router maka akan menuju ke proses echo request

gagal dan proses selesai, tetapi jika ditemukan proses selanjutnya diserahkan

kepada router. Router akan membaca tabel routing dan mencari entry yang cocok

jika ditemukan maka akan dicek apakah gateway yang digunakan itu merupakan

salah satu ethernet dari router ,jika benar maka menuju proses pencarian tujuan

karena IP destination masih berada disalah satu network yang terkoneksi

denganya, jika salah maka akan dicari router yang memiliki IP address yang sama

dengan gateway yang digunakan, dan kemudian akan diulang proses seperti

sebelumnya.

Jika tabel tidak ditemukan maka menuju ke echo request gagal dan proses selesai.

52

Gambar 3.3 Jaringan 1 router

Untuk lebih memahami jalanya flowchart maka digunakan contoh sebuah

jaringan seperti gambar 3.3. User melakukan Ping dari PC1 dengan tujuan

192.168.10.1. Hitung Net ID Secara manual prosesnya sebagai berikut:

IP Asal 192.168.0.1 11000000 10101000 00000000 00000001

Subnet asal 255.255.255.0 11111111 11111111 11111111 00000000

-------------------------------------AND-------------------------

Net Id 192.168.0.0 11000000 10101000 00000000 00000000

IP Tujuan 192.168.10.1 11000000 10101000 00001010 00000001

Subnet asal 255.255.255.0 11111111 11111111 11111111 00000000

----------------------------------------AND------------------------

Net Id 192.168.10.0 11000000 10101000 00001010 00000000

Dari hasil perhitungan diatas didapatkan Net ID yang berbeda, itu berarti

jaringan berada diluar network dan dibutuhkan router, maka akan membaca

gateway pada PC asal kemudian mencari router, didapatkan router 0 . Proses

selanjutnya dilakukan oleh router 0, sesuai dengan gambar diatas pada router 0

terdapat entry routing adalah:

Destination 127.0.0.0/8 gateway 127.0.0.1

Destination 192.168.0.0/24 gateway 192.168.0.10

53

Destination 192.168.10.0/24 gateway 192.168.10.10

Didapatkan 192.168.10.0/24 dan informasi untuk melewatinya melalui

192.168.10.10 yaitu eth 1, kemudian router 0 meneruskan paket ICMP kepada

PC2 dan PC 2 menerima ICMP echo request untuk proses selanjutnya PC2

melakukan ICMP echo reply, prosesnya sama dengan pada saat pengiriman echo

request.

3.3.3.Pemodelan Class

Class yang diperlukan dalam implementasi sistem antara lain:

Gambar 3. 4 Class class yang dibutuhkan

3.3.4.Spesifikasi perangkat sistem

Agar suatu sistem yang dibuat dapat berjalan dengan baik maka

dibutuhkan alat-alat yang mendukung dan yang paling utama adalah komputer.

Komputer adalah alat yang memiliki komponen berupa perangkat keras

(hardware) dan perangkat lunak (software), kedua komponen tersebut merupakan

sistem yang tidak terpisahkan.

54

Untuk bisa menjalankan aplikasi ini dibutuhkan beberapa perangkat keras

dan perangkat lunak pendukung.

Adapun komponen-komponen pendukungnya adalah sebagai berikut:

1. Prosesor Pentium III atau lebih baik

2. Memori minimal 128 MB atau lebih baik

3. Harddisk 4 GB

4. Monitor VGA

5. Keyboard, Mouse

6. Sistem Operasi Microsoft Windows XP

7. Flash Player 8 atau lebih baik

8. Internet Explore (untuk membaca help dan tutorial).

3.3.5.Rancangan Struktur Navigasi

Navigasi berfungsi untuk menjelajah bagian bagian movie melalui media

link. Navigasi ini berkaitan erat dengan suatu sistem menu dan struktur isi suatu

movie. Struktur perancangan navigasi menu yang pada aplikasi akan dibuat, terdiri

dari beberapa halaman tampilan yang disusun menggunakan spoke and hub model.

Struktur tersebut fleksibel untuk menghubungan satu halaman dengan beberapa

halaman lainya, pada struktur ini terdapat menu awal halaman pembuka yang juga

sebagai halaman penghubung dengan halaman lainya. Rangkaian menu tersebut

akan dilengkapi dengan perintah menu yang nantinya bila diklik akan menjalankan

aksi tertentu. Sehingga keseluruhan halaman menu dapat dilihat pada gambar 3.4

berikut ini:

55

Gambar 3. 5 Struktur Navigasi menu

3.3.6.Perancangan Tampilan

3.2.6.1.Rancangan Menu Simulasi

Gambar 3.6 Halaman utama simulasi

Menu

• Start : Fasilitas untuk menampilkan menu

• PC : Fasilitas untuk menampilkan form tambah PC

56

• Network : Fasilitas untuk menampilkan form tambah network

• Router : Fasilitas untuk menampilkan form tambah router

• Connect : Fasilitas untuk membuat koneksi

• Disconnect : Fasilitas untuk memutuskan koneksi

• Delete : Fasilitas untuk menghapus device

• Exit : Fasilitas untuk menuju halaman menu awal

• View :Fasilitas untuk menampilkan device properties

• IP Kalkulator :Fasilitas untuk menampilkan IP kalkulator

3.2.6.2. Form Tambah PC

Gambar 3.7 Form add PC

Pada form tambah PC ini user mengisi Nama PC, IP address,

subnet/prefix dan default gateway.

57

3.2.6.3. Form Tambah Network

Gambar 3.8. Form add Network

Pada form tambah network ini user mengisi Nama network, Net ID dan

subnet/prefix.

3.2.6.4. Form Tambah Router

Gambar 3.9. Form tambah router

Pada form tambah router ini user hanya mengisi nama router saja dan

untuk IP dilakukan pada router properties.

58

3.2.6.5. Form Properties PC

Gambar 3.10. Form Properties PC

Pada form ini user dapat mengubah konfigurasi PC, text field yang bisa

dirubah adalah nama, IP address, subnet/prefix dan default gateway, kemudian

menekan save. Tombol Command untuk menampilkan form uji konektivitas.

3.2.6.6. Form Properties Network

Gambar 3.11. Form Properties Network

Pada form ini user dapat mengubah konfigurasi network, text field yang

bisa dirubah adalah nama, Net ID dan subnet/prefix kemudian menekan tombol

save untuk menyimpan.

59

3.2.6.7. Form Properties Router

Gambar 3.12. Form Properties Router

Pada form properties router, user dapat mengisi dan mengubah IP address

dan subnet/prefix pada Ethernet yang telah disediakan. Tombol routing table

untuk menampilkan form routing table.

3.2.6.8. Form Koneksi

Gambar 3.13. Form Koneksi Nework ke Router

Form koneksi network router muncul ketika Sebuah network dikoneksikan

dengan router atau sebaliknya, dan user dapat memilih ethernet router mana yang

akan digunakan sebagai interface koneksi dengan network dan menekan tombol

connect.

60

3.3.6.9. Form Routing

Gambar 3.14. Form Routing table

Pada form routing, user data mengisi network destination, subnet/prefix

dan gateway kemudian menekan Add Route untuk menyimpan.

3.3.6.10. Form Uji Konektivitas

Gambar 3.15. Form Uji konektivitas

61

Pada form Uji konektivitas user mengisi field destination dan

kemudian menekan tombol PING dan kemudian akan muncul pesan pada text

area dibawahnya.

3.2.6.11. Form IP Kalkulator

Gambar 3.16. Form IP Kalkulator

Pada form IP user mengisi IP dan kemudian menekan Tombol

Hitung.

3.2.6.11. Form Error Message(pesan kesalahan)

Gambar 3.17 Form error message

Form ini akan muncul bila terjadi kesalahan dalam pengisian form .

62

3.2.6.12. Rancangan Tutorial

Pada menu ini akan ditampilkan materi tentang routing dan penggunaan

program simulasi.

Gambar 3.18. Halaman Tutorial

Halaman tutorial berupa HTML dan pada menu disajikan pilihan materi,

dan pada materi akan ditampilkan materi yang dipilih.

3.3 Pengumpulan Material

Pengumpulan material adalah suatu tahapan dimana pemgumpulan bahan

dilakukan. Komponen atau elemen yang dibutuhkan untuk pembuatan program,

antara lain yaitu:

1. Gambar atau grafik ilustrasi dan text(router, PC, network dan icon-

icon lainya)

2. Warna (merah,kuning,biru)

3. Suara (suara klik, music opening)

4. Animasi (gambar paket bergerak)

BAB IV

IMPLEMENTASI DAN ANALISA HASIL

4.1 Implementasi Program

Program ini dibuat untuk membantu pengajaran jaringan komputer dan

routing, program ini memberikan gambaran mengenai setting jaringan sederhana

dan mengisi routing table selain itu juga memberikan visualisasi tentang paket.

Hasil dari implementasi tersebut dapat di gambarkan melalui capture

screen langkah-langkah penggunaan program ini.

4.1.1 Menu Simulasi

4.1.1.1 Halaman Utama Simulasi

Ini adalah halaman utama simulasi .halaman ini akan ditampilkan pertama kali

setelah kita masuk menu simulasi.

Gambar 4.1 Halaman Utama Simulasi

63

64

Dengan menekan tombol start akan muncul menu-menu pilihan yang

dapat digunakan disana akan ada tombol-tombol yang digunakan untuk simulasi,

pada kanan bawah terdapat tombol view untuk menampilkan device properties,

mode simulasi dan IP kalkulator

4.1.1.2 Form Tambah PC

Gambar 4.2 Form isian untuk menambah PC

Pada halaman diatas user membuat PC dengan cara click gambar PC pada

menu dan akan muncul form input, isi lengkap form sebagai berikut:

Nama : Diisi dengan huruf dan angka atau kombinasinya

Contoh: PC1

IP : Diisi dengan IP format notasi desimal

Contoh: 192.168.0.1

Prefix: Diisi dengan angka dua digit dari 1 sampai 32

Contoh: 24

65

Subnet: Diisi dengan subnet format notasi desimal

Contoh: 255.255.255.0

Gateway : Diisi dengan gateway format notasi desimal

Contoh: 192.168.20.1

Mac: Otomatis akan terisi dan tidak bisa dirubah

Tekan tombol OK maka akan muncul gambar PC ditengah. Bila format

pengisian data salah atau tidak lengkap akan muncul pesan error.

4.1.1.3 Form Tambah Network

Gambar 4.3 Form isian untuk menambah Network

Pada halaman diatas user membuat network dengan cara click gambar network

pada menu dan akan muncul form input, isi lengkap form sebagai berikut:

Nama : Diisi dengan huruf dan angka atau kombinasinya

Contoh: N0

Net id : Diisi dengan Net id format notasi desimal

Contoh: 192.168.0.0

Prefix: Diisi dengan angka dua digit dari 1 sampai 32

Contoh: 24

Subnet: diisi dengan subnet format notasi desimal

66

Contoh: 255.255.255.0

Tekan tombol OK maka akan muncul gambar Network ditengah. Bila

format pengisian data salah atau tidak lengkap akan muncul pesan error.

4.1.1.4 Form Tambah Router

Gambar 4.4 Form isian untuk menambah Router

Pada halaman diatas user membuat Network dengan cara click gambar

Network pada menu dan akan muncul form input, isi lengkap form sebagai

berikut:

Nama : Diisi dengan huruf dan angka atau kombinasinya

Contoh: R0

Tekan tombol OK maka akan muncul gambar Router ditengah. Bila format

pengisian data salah atau tidak lengkap akan muncul pesan error.

67

Gambar 4.5 PC, Network, Router

4.1.1.5 Form PC Properties

Gambar 4.6 Tampilan PC Properties

Pada form ini user dapat melakukan perubahan data nama, IP, subnet/prefix

dan gateway pada PC kemudian menekan tombol save(gambar disk) untuk

menyimpan, Bila format pengisian data salah atau tidak lengkap akan muncul

pesan error. untuk menampilkan form uji konektivitas dengan menekan tombol

simbol command disebelah kiri disket.

68

4.1.1.6 Form Network Properties

Gambar 4.7 Tampilan Network Properties

Pada form ini user dapat melakukan perubahan data nama, Net ID dan

subnet/prefix pada network kemudian menekan tombol save(gambar disket)

untuk menyimpan, Bila format pengisian data salah atau tidak lengkap akan

muncul pesan error.

4.1.1.7 Form Router Properties

Gambar 4.8 Tampilan Router Properties

Pada form ini user dapat melakukan perubahan atau mengisi data nama, IP dan

subnet/prefix pada router kemudian menekan tombol save(gambar disket) untuk

69

menyimpan, Bila format pengisian data salah atau tidak lengkap akan muncul

pesan error. untuk menampilkan form pengisian tabel routing dengan menekan

tombol routing table disebelah kiri disket

4.1.1.8 Koneksi

Gambar 4.9 Koneksi PC ke Network

User dapat menghubungkan PC ke network dengan menekan tombol connect

dan akan muncul garis merah yang mengikuti mouse kemudian kita click diatas

network jika konfigurasi IP address pada PC masuk dalam domain network maka

akan tersambung. Bila IP address tidak masuk dalam domain network maka akan

muncul pesan error dan koneksi secara otomatis akan terputus.

Gambar 4.10 Koneksi Network ke Router

70

User dapat menghubungkan network ke router dengan menekan tombol

connect dan akan muncul garis merah yang mengikuti mouse kemudian kita click

diatas router lalu akan muncul form koneksi.

Gambar 4.11 FormConnect Network ke Router

User diijinkan memilih ethernet pada router yang akan disambungkan.

Jika ethernet belum dipakai dan IP Address eth router masuk dalam domain

network maka akan tersambung. Dan bila tidak cocok maka muncul pesan error.

User juga dapat membatalkan dengan menekan tanda silang pada pojok kanan

atas.

4.1.1.9 Form Routing Table

71

Gambar 4.12 Form Routing Table

Setelah menambah router pada halaman kerja maka user dapat mengisi

routing table dengan cara memasukan IP address destination, subnet mask dan

default gateway pada field yang sudah disediakan kemudian menekan add route

untuk menyimpan. User dapat menghapus entry melalui tombol silang disebelah

kanan entry. Selain itu user dapat mengisikan destination network dengan 0.0.0.0

/0 itu sama saja dengan perintah any net.

4.1.1.10 Form Uji Konektivitas

Gambar 4.13 Form Uji Konektivitas

Setelah semua konfigurasi selesai user dapat dapat menguji konektivitas

dengan fasilitas uji konektivitas. Pilih PC hingga muncul bayangan merah

kemudian pada PC properties tombol command akan muncul uji konektivitas

disana user dapat source (sumber) dan destination(tujuan) IP dan klik Enter untuk

mengeksekusinya lalu pada information window akan muncul konfirmasi dan

pada layar utama akan ditampilkan visualisasinya seperti gambar dibawah ini.

72

Gambar 4.14 Visualisasi

4.1.1.11 Error Message

Gambar 4.15 Error message

Pesan ini akan muncul bila data masukan belum lengkap.

73

4.1.2. Menu Tutorial

Gambar 4.16 Tutorial

Menu ini menyediakan materi mengenai jaringan user dapat memilih

materi dengan klik pada tombol materi dan memilih materi yang diinginkan.

4.1.2. Menu Simulasi

4.1.2.1 Class PC class PC {

var nama:String;

var ip:String;

var subnet:String;

var gateway:String;

var net_id:String;

var broadcast:String;

var mac:String;

var x:Number;

var y:Number;

function PC(nama:String, ip:String, subnet:String,

gateway:String, net_id:String, broadcast:String, mac:String,

x:Number, y:Number) {

this.nama = nama;

74

this.ip = ip;

this.subnet = subnet;

this.gateway = gateway;

this.net_id = net_id;

this.broadcast = broadcast;

this.mac = mac;

this.x = x;

this.y = y;

}

}

4.1.2.2. Class Network class Network {

var nama:String;

var net_id:String;

var subnet:String;

var broadcast:String;

var x:Number;

var y:Number;

function Network(nama:String, net_id:String, subnet:String,

broadcast:String, x:Number, y:Number) {

this.nama = nama;

this.net_id = net_id;

this.subnet = subnet;

this.broadcast = broadcast;

this.x = x;

this.y = y;

}

}

4.1.2.3. Class Router class Router {

var nama:String;

var ip_array:Array;

var routing_array:Array;

var subnet_array:Array;

var net_id_array:Array;

var broadcast_array:Array;

var eth_array:Array;

75

var x:Number;

var y:Number;

var destination:String;

var subnet_destination:String;

var via:String;

function Router(nama:String, ip_array:Array,

subnet_array:Array, net_id_array:Array, broadcast_array:Array,

x:Number, y:Number) {

this.nama = nama;

this.ip_array = new Array(ip_array[0], ip_array[1],

ip_array[2]);

this.subnet_array = new Array(subnet_array[0],

subnet_array[1], subnet_array[2]);

this.net_id_array = new Array(net_id_array[0],

net_id_array[1], net_id_array[2]);

this.eth_array = new Array(eth_array[0], eth_array[1],

eth_array[2]);

this.broadcast_array = new Array(broadcast_array[0],

broadcast_array[1], broadcast_array[2]);

this.routing_array = new Array();

this.x = x;

this.y = y;

this.destination = destination;

this.subnet_destination = subnet_destination;

this.via = via;

}

}

4.1.2.4. Class Koneksi

Kelas Koneksi adalah kelas yang berguna untuk menampung data koneksi

antara Device class Koneksi {

var koneksi_array:Array;

function Koneksi(obj_1:Object, obj_2:Object) {

koneksi_array = new Array();

koneksi_array.push(obj_1);

koneksi_array.push(obj_2);

76

}

}

4.1.2.5. Fungsi Hitung IP

Fungsi hitung ip adalah fungsi yang berguna untuk menghitung network

identifier dan broadcast dari parameter input masukan yaitu IP dan prefix. Listing

fungsi hitung IP disajikan di bawah ini: for (var i = 0; i<subnet_mask; i++) {

binari = binari+'1';

}

for (var i = 0; i<32-subnet_mask; i++) {

binari = binari+'0';

}

for (j=0; j<4; j++) {

subnet[j] = parseInt(strbinary.substr(n, 8), 2);

net_id_array.push(ip[j] & subnet[j]);

net_id_binari_array.push(hitungbiner(ip[j] & subnet[j]));

n = n+8;}

for (var i = 0; i<32-subnet_mask; i++) {

broadcast_binari = broadcast_binari+'1';

}

m = 0;

for (j=0; j<4; j++) {

broadcast_array[j] =

parseInt(broadcast_binari.substr(m, 8), 2);

m = m+8;

}

Penjelasan :

IPbertipe data array dan prefix bertipe data string, yang pertama kali

dilakukan adalah konversi prefix dari string menjadi biner,dari proses ini

dihasilkan prefix berupa biner 32 digit, kemudian prefix biner dipotong masing

masing menjadi 8 digit kemudian hasilnya di-And-kan dengan ip dan hasilnya

berupa net id di masukan dalam suatu array.

77

Langkah berikutnya adalah menghitung broadcast dengan cara

memotong dan mengambil Net ID sebanyak jumlah prefix. Kemudian

ditambahkan digit 1 dibagian belakang sebanyak 32 dikurangi prefix. sehingga

akan dihasilkan broadcast.

Semua hasil perhitungan dimasukan dalam object bernama hasilku dan

dijadikan nilai balik dari fungsi hitung ip.

4.1.2.6. Fungsi Uji Konektivitas

Fungsi uji konektivitas adalah fungsi utama dalam program ini listing

untuk fungsi ping disajikan di bawah ini:

Fungsi uji konektivitas adalah fungsi yang digunakan untuk pencarian,

paramenter input yang digunakan adalah ip destination bertipe data

String,langkah pertama yang dilakukan adalah dengan membaca semua data yang

ada pada pc yang digunakan untuk menjalankan perintah ping, data tersebut

meliputi ip, prefix, net id, default gateway dan mac address, setelah semua data

dibaca pc melakukan proses penghitungan dimana ip destination di-And-kan

dengan prefix untuk menghasilkan net id proses tersebut dijalankan pada

potongan listing dibawah ini _root.hitung_ip(_root.Pecah_ip(destination),_root.Networks[network

].subnet);

Dari hasil perhitungan bila Net ID hasil perhitungan sama dengan Net

ID dari PC Source maka IP destination berada pada satu jaringan dan kemudian

akan mencari didalam network itu sendiri pencarian dilakukan pada potongan

listing dibawah ini: for (var i = 0; i<_root.Koneksis.length; i++) {

var nol_id =

_root.Koneksis[i].koneksi_array[0].id;

var nol_tipe =

_root.Koneksis[i].koneksi_array[0].tipe;

var satu_id =

_root.Koneksis[i].koneksi_array[1].id;

var satu_tipe =

_root.Koneksis[i].koneksi_array[1].tipe;

78

if ((nol_id == network) && (nol_tipe ==

"Network")) {

device_id =

_root.Koneksis[i].koneksi_array[1].id;

device_tipe =

_root.Koneksis[i].koneksi_array[1].tipe;

if (device_tipe == 'PC') {

if (_root.PCs[device_id].ip == destination) {

_root.pesan_ping = "reply";

_root.trace_array.push({tipe:'PC', id:device_id});

break;

}

} else {for (var p = 0; p<3; p++) {

if

(_root.Routers[device_id].ip_array[p] == destination) {

_root.pesan_ping = "reply";

_root.trace_array.push({tipe:'Router', id:device_id});

break;

Koneksis adalah array dari class yang menyimpan data-data mengenai

koneksi .dan class-class terebut memiliki object yang yang berisi tipe dan id dari

device yang terkoneksi. Listing diatas terdiri dari looping sebanyak isi dari array

koneksis dan mencari data dari array koneksis yang berisi network mana yang

terkoneksi dengan pc, setelah ketemu maka akan melakukan push yang berisi

network dan tipenya pada trace_array. Trace_array adalah array yang nantinya

akan diisi data device yang dilewati dan digunakan sebagai panduan jalur-jalur

yang dilalui paket data yang dikirimkan. Proses diatas dilakukan pada satu

network tetapi bila net id hasil perhitungan tidak sama dengan net id pc source

maka proses akan membaca default gateway yang dimiliki oleh pc source dan

kemudian mencari router yang terkoneksi dengan pc source dan kemudian

mencocokan apakah router tersebut memiliki IP yang sesuai dengan default

gateway pada pc source. Proses tersebut dilakukan pada potongan listing dibawah

ini:

79

for (var i = 0; i<_root.Koneksis.length; i++) {

var nol_id = _root.Koneksis[i].koneksi_array[0].id;

var nol_tipe = _root.Koneksis[i].koneksi_array[0].tipe;

var satu_id = _root.Koneksis[i].koneksi_array[1].id;

var satu_tipe = _root.Koneksis[i].koneksi_array[1].tipe;

if ((nol_id == network) && (nol_tipe == "Network")) {

device_id = _root.Koneksis[i].koneksi_array[1].id;

device_tipe = _root.Koneksis[i].koneksi_array[1].tipe;

var eth; for (var p = 0; p<3; p++) {

var f = _root.Routers[device_id].eth_array[p];

if (f == network) {eth = p;

break;}}

if (_root.Routers[device_id].ip_array[eth] == gateway_source) {

router = device_id;

butuh_router = true;

break;

Dari proses diatas akan menghasilkan pesan true berarti router ditemukan

atau false artinya tidak ada router yang digunakan sebagai default gateway dari pc

source. Proses selanjutnya adalah memanggil fungsi router_cari_dilengan fungsi

ini sendiri berguna untuk mencari semua device baik pc ataupun router yang

terkoneksi dengan sebuah router, pemanggilan fungsi ini dilakukan seperti

potongan listing dibawah ini: if (butuh_router) {

var tujuan = destination;

var ceking_tabel:Object = new Object();

ceking_tabel = _root.router_cari_dilengan(router, tujuan);

tabel = ceking_tabel.baca_tabel;

}

Proses diatas akan menghasilkan pesan ditemukan atau tidak. Pesan

ditemukan berarti ditemukan device baik berupa PCataupun router yang memiliki

IP destination, pesan tidak ditemukan berarti router harus memanggil fungsi

routing_cari_network_via, fungsi routing_cari_network_via sendiri berguna untuk

80

membaca setiap entry dari table routing yang dimiliki router tersebut. Fungsi

routing_cari_network_via akan menghasilkan nilai balik berupa gateway jika

ditemukan network yang sesuai dengan IP destination dan akan menghasilkan

undefined bila tida ada entri table routing yang sesuai.

Fungsi routing_cari_network_via menentukan apakah proses berlanjut

atau tidak , jika gateway ditemukan maka router akan memanggil fungsi

router_cari_dilengan_cari_gateway yang berguna untuk mencari router yang

memiliki Ethernet yang IP dan prefixnya sesuai dengan nilai balik dari fungsi

routing_cari_network_via.jika ditemukan maka router yang ditemukan itu akan

mengulang proses pencarian yang sama seperti yang dilakukan router sebelumnya

4.3 Pengujian Sistem dan Analisa

Pengujian dan analisa akan dilakukan pada program bantu simulasi routing

dengan konfigurasi sebagai berikut:

Gambar 4.17 konfigurasi pada pengujian sistem

Berdasarkan konfigurasi (Gambar 4.14 atau Gambar 4.16 )diatas akan

dilakukan pengujian terhadap sistem yang telah dikembangkan. Dilakukan

pengujian sistem dengan uji konektivitas dan kemudian menganalisa hasilnya

sebagai berikut:

4.3.1 Konfigurasi 1

Pada konfigurasi ini dipastikan bahwa setiap device terkoneksi dengan

benar dan pegisian tabel routing juga benar.

81

Tabel 4.1 Hasil pengujian pada uji konektivitas

Source Destination Output Analisa

PC1(192.168.40.1) 192.168.40.10 Reply PC1 menghitung

192.168.40.10 di-And-kan

dengan subnet dari PC1

255.255.255.0 didapatkan

net id 192.168.40.0 itu

berarti sama dengan net id

PC1 dan kemudian proses

PC1 melakukan echo

request dalam network itu

sendiri dan didapatkan echo

reply dari 192.168.40.10

(router 2)

PC1(192.168.40.1) 192.168.40.2 Request

Time Out

PC1 menghitung

192.168.40.2 di-And-kan

dengan subnet dari PC1

255.255.255.0 didapatkan

net id 192.168.40.0 itu

berarti sama dengan net id

PC1 dan kemudian PC1

melakukan echo request di

network itu sendiri dan tidak

didapatkan echo reply IP

tersebut maka akan

dilakukan looping terus

menerus untuk mencari

sehingga PC1 selalu

menunggu hingga waktu

82

habis

PC1(192.168.40.1) 192.168.30.1 Reply PC1 menghitung

192.168.30.1 di-And-kan

dengan subnet dari PC1

255.255.255.0 didapatkan

net id 192.168.30.0 itu

berarti tidak sama dengan

net id PC1 dan kemudian

PC1 membaca gateway dari

PC1 ketika ditemukan router

semua proses diserahkan

pada router2 dan router2

akan mencari dalam tabel

routing network ditemukan

192.168.30.1 kemudian

router2 mengirimkan echo

reply

PC1(192.168.20.10) 192.168.20.10 Reply PC1 menghitung

192.168.20.10 di-And-kan

dengan subnet dari PC1

255.255.255.0 didapatkan

net id 192.168.20.0 itu

berarti tidak sama dengan

net id PC1 dan kemudian

PC1 membaca gateway dari

PC1 ketika ditemukan

router2 semua proses

diserahkan pada router2 dan

router2 akan membaca

routing tabel untuk mencari

83

192.168.20.0, ditemukan

192.168.20.0 dan

192.168.30.1 sebagai

gatewaynya maka router

akan mencari dan ditemukan

192.168.30.1 pada router1

selanjutnya proses

diserahkan pada router R1

membaca routing tabel dan

didapatkan 192.168.20.10

kemudian 192.168.20.10

mengirimkan echo reply

PC1(192.168.20.10) 192.168.0.1 Reply Proses yang terjadi sama

dengan proses sebelumnya

hanya sana disini dilewati 2

router yaitu router R2 dan

router0

PC1(192.168.20.10) 10.10.10.10 Destination

Net

Unrecable

Pada Router R1 pesan tidak

didapatakan informasi

mengenai 10.10.10.10 maka

Router R1 akan

mengirimkan pesan DNU

kepada PC1

4.3.2 Konfigurasi 2

Pada konfigurasi ini Gateway pada PC1 dihapus atau diganti dengan IP PC1

Tabel 4.2.Pengujian dengan Gateway pada PC1 dihapus atau diganti.

Source Destination Output Analisa

84

PC1(192.168.40.1) 192.168.0.1 Request

Time Out

Proses echo request berhasil

tetapi echo reply tidak

menemukan jalur untuk

menuju 192.168.40.1 hal ini

disebabkan tidak ditemukan

gateway PC1. PC2

menunggu hingga waktu

habis

4.3.3 Konfigurasi 3

Pada konfigurasi ini Tabel Routing pada R1 dihapus

Tabel 4.3 Pengujian dengan tabel routing pada R1 dihapus.

Source Destination Output Analisa

PC1(192.168.40.1) 192.168.0.1 Request

Time Out

Proses sampai R1 benar

tetapi pada R1 tidak

ditemukan informasi untuk

menuju 192.168.01 sehingga

PC1 menunggu terus

4.3.3 Analisa Hasil Pengujian Program pada User

Berdasarkan hasil pengujian program dan pengambilan quisioner terhadap

30 responden yang berasal dari mahasiswa teknik informatika USD angkatan

2004 – 2007 didapatkan hasil sebagai berikut:

85

Pertanyaan 1:

93%

7%

Apakah anda pernah mengikuti mata kuliah jaringan komputer 1 ?

Ya Tidak

Gambar 4.18. Pie chart jawaban pertanyaan survey 1

Dari jawaban yang dikemukakan 28 responden menjawab ya dan 2 responden

menjawab tidak pernah mengikuti mata kuliah jaringan komputer 1.

Pertanyaan 2:

93%

7%

Apakah anda pernah mengikuti pratikum komputer 1 ?

Ya Tidak

Gambar 4.19. Pie chart jawaban pertanyaan survey 2

Dari jawaban yang dikemukakan 28 responden menjawab ya dan 2 responden

menjawab tidak pernah mengikuti praktikum jaringan komputer 1.

86

Pertanyaan 3:

61%39%

Apakah anda mengerti dasar dasar routing ?

Ya Tidak

Gambar 4.20. Pie chart jawaban pertanyaan survey 3

Dari jawaban yang dikemukakan 11 menjawab mengerti,7 menjawab tidak

mengerti dan 2 tidak menjawab atau kosong

Bagian 2:

Pertanyaan 1:

100%

0%

Apakah program simulasi routing ini menarik ?

Ya Tidak

Gambar 4.21. Pie chart jawaban pertanyaan survey 1 bagian 2

Dari jawaban yang dikemukakan semua menjawab menarik

87

Pertanyaan 2:

57%43%

Apakah program simulasi routing ini interaktif ?

Ya Tidak

Gambar 4.21. Pie chart jawaban pertanyaan survey 2 bagian 2

Dari jawaban yang dikemukakan semua menjawab interaktif

Pertanyaan 3:

52%48%

Apakah help yang disajikan membantu anda dalam menggunakan program ?

Ya Tidak

Gambar 4.22. Pie chart jawaban pertanyaan survey 3 bagian 2 Dari jawaban yang dikemukakan 14 menjawab membantu, 13 menjawab tidak

membantu dan 3 tidak menjawab

88

Pertanyaan 4:

57%43%

Apakah anda dapat mengetahui proses pengiriman paket (echo request dan

reply ) setelah menggunakan program ini ?Ya Tidak

Gambar 4.23. Pie chart jawaban pertanyaan survey 4 bagian 2

Dari jawaban yang dikemukakan 24 menjawab mengerti menjawab 6 tidak

mengerti dan tidak menjawab

Pertanyaan 5:

65%35%

Apakah materi jaringan yang diberikan membantu anda dalam memahami

proses routing ?Ya Tidak

Gambar 4.24. Pie chart jawaban pertanyaan survey 5 bagian 2

Dari jawaban yang dikemukakan menjawab mengerti menjawab tidak mengerti

dan tidak menjawab

89

Pertanyaan 6:

100%

0%

Apakah program routing ini bermanfaat ?

Ya Tidak

Gambar 4.23. Pie chart jawaban pertanyaan survey 6 bagian 2

Dari jawaban yang dikemukakan semua menjawab bermanfaat.

Pertanyaan 7: Responden memberikan banyak variasi score untuk program simulasi ini dan dari

perhitungan didapatakan nilai rata-rata. 87.76

4.4. Distribusi

Aplikasi yang dibuat akan didistribusikan dalam bentuk CD interaktif. Dalam CD

tersebut berisi:

1. Opening_Movie.exe

2. Simulasi.exe

3. Profile.exe

4. Tutorial.HTML

5. Help.HTML

6. Autorun.inf

Berisi: [autorun]

open= Opening_Movie..exe

90

icon=simulasi.ico

7. Class-class

Berisi:

Router.as, PC.as, Network.as, Koneksi.as.

8. Simulasi.ico

BAB V

KESIMPULAN DAN SARAN

5.1 KESIMPULAN

Dari hasil analisa, desain, implementasi dan survei yang telah dilakukan

maka dapat di ambil kesimpulan sebagai berikut ini :

1. Program simulasi routing IP ini dapat diimplementasikan dengan

menggunakan Macromedia Flash 8

2. Program simulasi routing IP ini menarik dan interaktif dan bermanfaat.

3. Materi tutorial yang diberikan membantu dalam memahami proses

routing

4. Membantu user untuk mengetahui proses routing dengan memberikan

visualisasi proses pengiriman paket sesuai dengan tujuan penelitian.

5.2 KELEBIHAN dan KEKURANGAN

A. Kelebihan:

1. Lebih efisien dan fleksibel karena hanya menggunakan satu komputer.

2. Program bantu ini dapat memberikan visualisasi tentang jalanya echo

request dan echo reply.

3. Setting lebih mudah, karena program bantu ini menggunakan grafik user

interface dan fokus pada form-form yang penting untuk digunakan dalam

setting jaringan pada simulasi.

91

92

B. Kekurangan:

Tidak bisa memberikan pengetahuan dan pengalaman mengenai

cabling dan setting pada perangkat keras.

5.3 SARAN

Saran yang dapat diberikan agar program bantu ini dapat di buat lebih baik

lagi adalah sebagai berikut :

Untuk pengembangan lebih lanjut dapat dilengkapi dengan routing

dinamik dan visualisasi pada data link layer.

DAFTAR PUSTAKA . Jogiyanto, 1999, Pengenalan Komputer. Yogyakarta: Penerbit Andi.

Pete, S., 2001, Getting More Out of ICMP, [online],

(http://www.sans.org/infosecFAQ/audit/more_ICMP.htm, diakses

tanggal 8 agustus 2008 )

Amang, 2008, Cisco Certified Network Associate, [online], (http://www.eepis-

its.edu /CCNA.htm, diakses tanggal 8 agustus 2008 )

Hutapea, T., 2001, Pengantar dan Konsep TCP/IP, [online], (http://www.ilmu

komputer.com, diakses tanggal 8 agustus 2008 )

Luther, A., 1994, Authoring Interactive Multimedia. AP Professional. Boston

Hernawan, A., 2007, Modul Praktikum Jaringan Komputer / routing Yogyakarta :

Teknik Informatika USD

Oetomo, S.D.B., 2004, Konsep dan Perancangan Jaringan Komputer.

Yogyakarta : Penerbit Andi.

Mansfield, N., 2004, Practical TCP/IP Mendesain, Menggunakan dan

Troubleshooting Jaringan TCP/IP di Linux dan Windows.

Yogyakarta : Penerbit Andi

Fanani .A.Z,. 2007, Bermain Logika Action Script Macromedia Flash Pro 8,

Jakarta : Elex Media Komputindo.

Herman. 2006, CAI (Computer Assisted Instruction) Dalam Dunia Pendidikan,

Bandung : Pustaka Setia.

Sutopo, A., 2003, Multimedia Interaktif dengan Flash.

Yogyakarta:Graha Ilmu.

LAMPIRAN

Start

on (release) {

if (_root.start_.minimize) {

_root.start_.minimize = false;

} else {

_root.start_.minimize = true;

}

}

Start frame

onClipEvent (load) {

this._y = 500;

minimize = false;

}

onClipEvent (enterFrame) {

if (!minimize) {

if (this._y>300) {

this._y -= 40;

minimize = false;

}

} else {

if (minimize) {

if (this._y<760) {

this._y += 40;

}

-

}

}

}

Add PC

-

on (release) {

_root.blockAction();

_root.createEmptyMovieClip('Form_addPC', _root.getNextHighestDepth());

_root.Form_addPC.attachMovie('Form_addPC', this_mc, 1);

_root.Form_addPC._x = Stage.width/2;

_root.Form_addPC._y = Stage.height/2;

}

Add PC frame

onClipEvent (load) {

var someListener:Object = new Object();

someListener.onSetFocus = function() {

temp = Selection.getFocus();

//trace(temp);

};

Selection.addListener(someListener);

mac_text.text = _root.Mac();

}

onClipEvent (enterFrame) {

//=================================pc network===========

if (subnet_dec.text != "" && temp == "_level0.Form_addPC.undefined.pc.subnet_dec") {

-

subnet_text.text = _root.convert_subnet(subnet_dec.text);

}

if (subnet_text.text != "" && temp == "_level0.Form_addPC.undefined.pc.subnet_text") {

subnet_dec.text = _root.konvert_menjadi_dec(subnet_text.text);

}

}

Add PC ok movie

on (release) {

var golek = _root.cek_ip_sama(ip_text.text, "100000", "PC");

if ((nama_text.text.length>0) && (ip_text.text.length>0) && (subnet_text.text.length>0) && (gateway_text.text.length>0)) {

if (golek == false) {

var cek_subnet;

var cek_subnetku;

var cek_ip = _root.handler_cek_ip_subnet(ip_text.text);

var cek_gateway = _root.handler_cek_ip_subnet(gateway_text.text);

if (cek_ip && cek_gateway) {

var hasil:Object = _root.hitung_ip(_root.Pecah_ip(ip_text.text), subnet_text.text);

_root.addPC(nama_text.text, ip_text.text, hasil.subnet_mask, gateway_text.text, hasil.net_id, hasil.broadcast, mac_text.text);

_root.drawGraphs();

removeMovieClip(_parent);

removeMovieClip(_root.blocker);

trace("maciiii"+mac_text.text);

-

} else {

_root.warning('ip salah');

_root.pesanku = "Input data salah";

}

} else {

_root.warning('isi lagi');

_root.pesanku = "IP sudah pernah digunakan";

}

} else {

_root.warning('isi lagi');

_root.pesanku = "Input data Belum lengkap";

}

}

Add PC function

function addPC(nama:String, ip:String, subnet:String, gateway:String, net_id:String, broadcast:String, mac:String):Boolean {

var sukses:Boolean = true;

if ((PCs.length<_root.max_pc) && (nama != '') && (ip != '') && (subnet != '') && (gateway != '')) {

//PCs.push(new PC(nama, ip, subnet, gateway, Stage.width/2, Stage.height/2));

PCs.push(new PC(nama, ip, subnet, gateway, net_id, broadcast, mac, Stage.width/2, Stage.height/2));

} else {

sukses = false;

}

return sukses;

-

}

PC graf

on (press) {

startDrag(_parent._parent);

}

on (release) {

stopDrag();

_root.keselek_tipe = 'PC';

_root.keselek_id = _parent.id;

_root.input.loadContent();

}

onClipEvent (enterFrame) {

_root.PCs[_parent.id].x = _parent._parent._x;

_root.PCs[_parent.id].y = _parent._parent._y;

if (_root.keselek_id == _parent.id && _root.keselek_tipe == 'PC') {

this.gotoAndStop(2);

} else {

this.gotoAndStop(1);

}

}

Add Router

on (release) {

_root.blockAction();

_root.createEmptyMovieClip('Form1', _root.getNextHighestDepth());

-

_root.Form1.attachMovie('Form_addrouter', this_mc, 1);

_root.Form1._x = Stage.width/2;;

_root.Form1._y = Stage.height/2;;

}

Add router ok movie

on (release) {

if (_root.Routers.length == 4) {

_root.warning('masukan nama');

_root.pesanku = "Router Maximal";

}

if (nama_text.text.length>0) {

_root.addRouter(nama_text.text, temp_array, temp_array2, temp_array3, temp_array4);

removeMovieClip(_root.blocker);

_root.drawGraphs();

removeMovieClip(_parent);

} else {

_root.warning('masukan nama');

_root.pesanku = "Input data belum lengkap";

}

}

Router graf

on (press) {

startDrag(_parent._parent);

-

}

on (release) {

stopDrag();

_root.keselek_tipe = 'Router';

_root.keselek_id = _parent.id;

_root.input.loadContent();

}

onClipEvent (enterFrame) {

_root.Routers[_parent.id].x = _parent._parent._x;

_root.Routers[_parent.id].y = _parent._parent._y;

if (_root.keselek_id == _parent.id && _root.keselek_tipe == 'Router') {

this.gotoAndStop(2);

} else {

this.gotoAndStop(1);

}

}

Network graf

on (press) {

startDrag(_parent._parent);

}

on (release) {

stopDrag();

_root.keselek_tipe = 'Network';

-

_root.keselek_id = _parent.id;

_root.input.loadContent();

}

onClipEvent (enterFrame) {

_root.Networks[_parent.id].x = _parent._parent._x;

_root.Networks[_parent.id].y = _parent._parent._y;

if (_root.keselek_id == _parent.id && _root.keselek_tipe == 'Network') {

this.gotoAndStop(2);

} else {

this.gotoAndStop(1);

}

}

Add router function

function addRouter(nama:String, ip_array:Array, subnet_array:Array, net_id_array:Array, broadcast_array:Array):Boolean {

var sukses:Boolean = true;

if ((Routers.length<_root.max_router) && (nama != '')) {

////trace('buat router');

Routers.push(new Router(nama, ip_array, subnet_array, net_id_array, broadcast_array, Stage.width/2, Stage.height/2));

//Routers.push(new Router(nama, ip_array, Stage.width/2, Stage.height/2));

} else {

sukses = false;

}

return sukses;

}

-

Add Network

on (release) {

_root.blockAction();

_root.createEmptyMovieClip('form', _root.getNextHighestDepth());

_root.form.attachMovie('addNetwork', this_mc, 1);

_root.form._x = Stage.width/2;;

_root.form._y = Stage.height/2;;

}

Add network frame

onClipEvent (load) {

var someListener:Object = new Object();

someListener.onSetFocus = function() {

temp = Selection.getFocus();

//trace(temp);

};

Selection.addListener(someListener);

}

onClipEvent (enterFrame) {

//=================================pc network===========

if (subnet_dec.text != "" && temp == "_level0.form.undefined.network.subnet_dec") {

subnet_text.text = _root.convert_subnet(subnet_dec.text);

}

if (subnet_text.text != "" && temp == "_level0.form.undefined.network.subnet_text") {

subnet_dec.text = _root.konvert_menjadi_dec(subnet_text.text);

}

-

}

Add network function

function addNetwork(nama:String, net_id:String, subnet:String, broadcast:String):Boolean {

var sukses:Boolean = true;

if ((Networks.length<_root.max_network) && (nama != '') && (net_id != '') && (subnet != '')) {

Networks.push(new Network(nama, net_id, subnet, broadcast, Stage.width/2, Stage.height/2));

//Networks.push(new Network(nama, net_id, subnet, Stage.width/2, Stage.height/2));

} else {

sukses = false;

}

return sukses;

}

Add network ok movie

on (release) {

var cek_subnet;

var cek_subnetku;

var golek = _root.cek_ip_sama(net_id_text.text, "100000", "Network");

/**/

if ((nama_text.text.length>0) && (net_id_text.text.length>0) && (subnet_text.text.length>0)) {

if (golek == false) {

var cek_ip = _root.handler_cek_ip_subnet(net_id_text.text);

//================

if (subnet_text.text.length<3) {

cek_subnet = subnet_text.text;

} else {

-

cek_subnet = _root.convert_subnet(subnet_text.text);

}

//==================

var hasil:Object = _root.hitung_ip_network(_root.Pecah_ip(net_id_text.text), cek_subnet);

if (cek_ip) {

var temp_broadcast;

_root.addNetwork(nama_text.text, hasil.net_id, hasil.subnet_mask, hasil.broadcast);

_root.drawGraphs();

removeMovieClip(_parent);

removeMovieClip(_root.blocker);

} else {

_root.warning('ip salah');

_root.pesanku = "Input data salah";

}

} else {

_root.warning('ip salah');

_root.pesanku = "Net ID sudah digunakan ";

}

} else {

_root.warning('ip salah');

_root.pesanku = "Input data belum lengkap";

}

}

-

Draw graf

function drawGraphs() {

i = _root.getNextHighestDepth();

while (i>=0) {

removeMovieClip(_root.getInstanceAtDepth(i));

i--;

}

for (i=0; i<Networks.length; i++) {

//trace('buat network '+i+'netw_'+Networks[i].nama);

_root.createEmptyMovieClip(i+'netw_'+Networks[i].nama, 3+i);

_root[i+'netw_'+Networks[i].nama].attachMovie('network', 'gambar', 1);

_root[i+'netw_'+Networks[i].nama].gambar.id = i;

_root[i+'netw_'+Networks[i].nama].gambar.tipe = 'Network';

_root[i+'netw_'+Networks[i].nama]._x = Networks[i].x;

_root[i+'netw_'+Networks[i].nama]._y = Networks[i].y;

}

inc = i+3;

for (i=0; i<PCs.length; i++) {

//trace('buat pc '+i+'pc_'+PCs[i].nama);

_root.createEmptyMovieClip(i+'pc_'+PCs[i].nama, i+inc);

_root[i+'pc_'+PCs[i].nama].attachMovie('pc_', 'gambar', 1);

_root[i+'pc_'+PCs[i].nama].gambar.id = i;

_root[i+'pc_'+PCs[i].nama].gambar.tipe = 'PC';

_root[i+'pc_'+PCs[i].nama]._x = PCs[i].x;

_root[i+'pc_'+PCs[i].nama]._y = PCs[i].y;

-

}

inc += i;

for (i=0; i<Routers.length; i++) {

////trace('router '+Routers[i].nama);

_root.createEmptyMovieClip(i+'router'+Routers[i].nama, i+inc);

_root[i+'router'+Routers[i].nama].attachMovie('router', 'gambar', 1);

_root[i+'router'+Routers[i].nama].gambar.id = i;

_root[i+'router'+Routers[i].nama].gambar.tipe = 'Router';

_root[i+'router'+Routers[i].nama]._x = Routers[i].x;

_root[i+'router'+Routers[i].nama]._y = Routers[i].y;

}

}

Delete

on (release) {

var delet;

var rout_eth;

switch (_root.keselek_tipe) {

case ("Router") :

delet = _root.keselek_id+'router'+_root.Routers[_root.keselek_id].nama;

removeMovieClip(_root.keselek_id+'router'+_root.Routers[_root.keselek_id].nama);

trace(_root.keselek_id);

_root.Routers.splice(_root.keselek_id, 1);

break;

case ("Network") :

-

removeMovieClip(_root.keselek_id+'netw_'+_root.Networks[_root.keselek_id].nama);

trace(_root.keselek_id);

_root.Networks.splice(_root.keselek_id, 1);

break;

case ("PC") :

delet = _root.keselek_id+'pc_'+_root.PCs[_root.keselek_id].nama;

removeMovieClip(delet);

trace(_root.keselek_id);

_root.PCs.splice(_root.keselek_id, 1);

break;

}

for (var i = 0; i<_root.Koneksis.length; i++) {

var nol_id = _root.Koneksis[i].koneksi_array[0].id;

var nol_tipe = _root.Koneksis[i].koneksi_array[0].tipe;

var satu_id = _root.Koneksis[i].koneksi_array[1].id;

var satu_tipe = _root.Koneksis[i].koneksi_array[1].tipe;

var device_id;

var device_tipe;

if (((nol_id == _root.keselek_id) && (nol_tipe == _root.keselek_tipe)) || ((satu_id == _root.keselek_id) && (satu_tipe == _root.keselek_tipe))) {

//cari klo tujuan pc

var tipene = _root.Koneksis[i].koneksi_array[0].tipe;

if (tipene == 'Router') {

device_id = _root.Koneksis[i].koneksi_array[0].id;

} else {

device_id = _root.Koneksis[i].koneksi_array[1].id;

-

}

for (var s = 0; s<3; s++) {

var eth = _root.Routers[device_id].eth_array[s];

if (eth == _root.keselek_id) {

_root.Routers[device_id].eth_array[s] = undefined;

}

}

_root.Koneksis.splice(i, 1);

}

}

}

Form properties

onClipEvent (load) {

function loadContent() {

//trace('loading'+_root.keselek_tipe+'['+_root.keselek_id+']');

var tampil = true;

if (tampil == true) {

gotoAndStop(_root.keselek_tipe);

} else {

gotoAndStop(4);

}

switch (_root.keselek_tipe) {

case ("Router") :

nama_text.text = _root.Routers[_root.keselek_id].nama;

-

eth0_text.text = _root.Routers[_root.keselek_id].ip_array[0];

eth1_text.text = _root.Routers[_root.keselek_id].ip_array[1];

eth2_text.text = _root.Routers[_root.keselek_id].ip_array[2];

subnet_eth0_text.text = _root.Routers[_root.keselek_id].subnet_array[0];

subnet_eth1_text.text = _root.Routers[_root.keselek_id].subnet_array[1];

subnet_eth2_text.text = _root.Routers[_root.keselek_id].subnet_array[2];

subnet_dec0.text = _root.konvert_menjadi_dec(subnet_eth0_text.text);

subnet_dec1.text = _root.konvert_menjadi_dec(subnet_eth1_text.text);

subnet_dec2.text = _root.konvert_menjadi_dec(subnet_eth2_text.text);

if (_root.Routers[_root.keselek_id].ip_array[0] == undefined) {

eth0_text.text = "";

subnet_eth0_text.text = "";

subnet_dec0.text = "";

}

if (_root.Routers[_root.keselek_id].ip_array[1] == undefined) {

eth1_text.text = "";

subnet_eth1_text.text = "";

subnet_dec1.text = "";

}

if (_root.Routers[_root.keselek_id].ip_array[2] == undefined) {

eth2_text.text = "";

subnet_eth2_text.text = "";

subnet_dec2.text = "";

}

break;

-

case ("Network") :

nama_text.text = _root.Networks[_root.keselek_id].nama;

net_id_text.text = _root.Networks[_root.keselek_id].net_id;

subnet_text.text = _root.Networks[_root.keselek_id].subnet;

broadcast_text.text = _root.Networks[_root.keselek_id].broadcast;

subnet_dec.text = _root.konvert_menjadi_dec(subnet_text.text);

break;

case ("PC") :

nama_text.text = _root.PCs[_root.keselek_id].nama;

ip_text.text = _root.PCs[_root.keselek_id].ip;

subnet_text.text = _root.PCs[_root.keselek_id].subnet;

gateway_text.text = _root.PCs[_root.keselek_id].gateway;

net_id_text.text = _root.PCs[_root.keselek_id].net_id;

broadcast_text.text = _root.PCs[_root.keselek_id].broadcast;

subnet_dec.text = _root.konvert_menjadi_dec(subnet_text.text);

mac_text.text = _root.PCs[_root.keselek_id].mac;

break;

}

}

var someListener:Object = new Object();

someListener.onSetFocus = function() {

temp = Selection.getFocus();

//trace(temp);

};

Selection.addListener(someListener);

-

}

onClipEvent (enterFrame) {

//=================================pc network===========

if (subnet_dec.text != "" && temp == "_level0.input.subnet_dec") {

subnet_text.text = _root.convert_subnet(subnet_dec.text);

}

if (subnet_text.text != "" && temp == "_level0.input.subnet_text") {

subnet_dec.text = _root.konvert_menjadi_dec(subnet_text.text);

}

//============================router========================================

if (subnet_dec0.text != "" && temp == "_level0.input.subnet_dec0") {

subnet_eth0_text.text = _root.convert_subnet(subnet_dec0.text);

}

if (subnet_text.text != "" && temp == "_level0.input.subnet_eth0_text") {

subnet_dec0.text = _root.konvert_menjadi_dec(subnet_eth0_text.text);

if(subnet_dec0.text!="NaN.NaN.NaN.NaN"){

subnet_dec0.text = _root.konvert_menjadi_dec(subnet_eth0_text.text); } else{

subnet_dec0.text="";

}

//trace('test'+_root.konvert_menjadi_dec(subnet_eth0_text.text));

}

if (subnet_dec0.text == "" && temp == "_level0.input.subnet_eth0_text") {

subnet_eth0_text.text = "";

}

-

if (subnet_text.text == "" && temp =="_level0.input.subnet_dec0" ) {

subnet_dec0.text = "";

}

//============================================

if (subnet_dec1.text != "" && temp == "_level0.input.subnet_dec1") {

subnet_eth1_text.text = _root.convert_subnet(subnet_dec1.text);

}

if (subnet_text.text != "" && temp == "_level0.input.subnet_eth1_text") {

subnet_dec1.text = _root.konvert_menjadi_dec(subnet_eth1_text.text);

if(subnet_dec1.text!="NaN.NaN.NaN.NaN"){

subnet_dec1.text = _root.konvert_menjadi_dec(subnet_eth1_text.text); } else{

subnet_dec1.text="";

}

}

if (subnet_dec1.text == "" && temp == "_level0.input.subnet_dec0") {

subnet_eth1_text.text = "";

}

if (subnet_text.text == "" && temp == "_level0.input.subnet_eth0_text") {

subnet_dec1.text = "";

}

//=================

if (subnet_dec2.text != "" && temp == "_level0.input.subnet_dec2") {

subnet_eth2_text.text = _root.convert_subnet(subnet_dec2.text);

}

if (subnet_text.text != "" && temp == "_level0.input.subnet_eth2_text") {

-

subnet_dec2.text = _root.konvert_menjadi_dec(subnet_eth2_text.text);

if(subnet_dec2.text!="NaN.NaN.NaN.NaN"){

subnet_dec2.text = _root.konvert_menjadi_dec(subnet_eth2_text.text); } else{

subnet_dec2.text="";

}

}

if (subnet_dec2.text == "" && temp == "_level0.input.subnet_dec0") {

subnet_eth2_text.text = "";

}

if (subnet_text.text == "" && temp == "_level0.input.subnet_eth0_text") {

subnet_dec2.text = "";

}

//====================================================================

if (subnet_text.text.length<3) {

if (subnet_text.text>32) {

subnet_text.text = 32;

}

if (subnet_text.text<1) {

subnet_text.text = 1;

}

}

//===================================================

if (subnet_eth0_text.length<3) {

if (subnet_eth0_text.text>32) {

subnet_eth0_text.text = 32;

-

}

if (subnet_eth0_text.text<1) {

subnet_eth0_text.text = 1;

}

}

if (subnet_eth1_text.length<3) {

if (subnet_eth1_text.text>32) {

subnet_eth1_text.text = 32;

}

if (subnet_eth1_text.text<1) {

subnet_eth1_text.text = 1;

}

}

if (subnet_eth2_text.length<3) {

if (subnet_eth2_text.text>32) {

subnet_eth2_text.text = 32;

}

if (subnet_eth2_text.text<1) {

subnet_eth2_text.text = 1;

}

}

//=====================================

if (_root.keselek_tipe == undefined) {

gotoAndStop(4);

this.visible(false);

-

}

this.visible(true);

}

Save PC

on (release) {

//trace(_root.keselek.id+_root.keselek.tipe);

var golek = _root.cek_ip_sama(ip_text.text, _root.keselek_id, _root.keselek_tipe);

if (golek == false) {

if ((nama_text.text.length>0) && (ip_text.text.length>0) && (subnet_text.text.length>0) && (gateway_text.text.length>0)) {

var cek_ip = _root.handler_cek_ip_subnet(ip_text.text);

var cek_gateway = _root.handler_cek_ip_subnet(gateway_text.text);

var cek_subnetlo = _root.handler_cek_ip_subnet(subnet_dec.text);

var cek_subnetku = _root.handler_cek_ip_subnet(subnet_text.text);

if (cek_gateway && cek_subnetlo && cek_ip) {

var hasil:Object = _root.hitung_ip(_root.Pecah_ip(ip_text.text), subnet_text.text);

_root.PCs[_root.keselek_id].nama = nama_text.text;

_root.PCs[_root.keselek_id].ip = ip_text.text;

_root.PCs[_root.keselek_id].subnet = hasil.subnet_mask;

_root.PCs[_root.keselek_id].gateway = gateway_text.text;

_root.PCs[_root.keselek_id].net_id = hasil.net_id;

-

_root.PCs[_root.keselek_id].broadcast = hasil.broadcast;

il.broadcast);

nama_text.text = _root.PCs[_root.keselek_id].nama;

ip_text.text = _root.PCs[_root.keselek_id].ip;

subnet_text.text = _root.PCs[_root.keselek_id].subnet;

gateway_text.text = _root.PCs[_root.keselek_id].gateway;

net_id_text.text = _root.PCs[_root.keselek_id].net_id;

broadcast_text.text = _root.PCs[_root.keselek_id].broadcast;

} else {

_root.warning('masukan nama');

_root.pesanku = "Input data salah";

}

} else {

_root.warning('masukan nama');

_root.pesanku = "Input data blum lengkap";

}

} else {

_root.warning('masukan nama');

_root.pesanku = "IP sudah pernah digunakan";

}

}

Save network

on (release) {

var cek_subnetku;

var cek_subnet;

-

var golek = _root.cek_ip_sama(net_id_text.text, _root.keselek_id, _root.keselek_tipe);

if (golek == false) {

if ((nama_text.text.length>0) && (net_id_text.text.length>0) && (subnet_text.text.length>0)) {

cek_subnetku = _root.handler_cek_ip_subnet(subnet_dec.text);

var cek_ip = _root.handler_cek_ip_subnet(net_id_text.text);

var hasil:Object = _root.hitung_ip_network(_root.Pecah_ip(net_id_text.text), subnet_text.text);

if (cek_ip && cek_subnetku) {

var temp_broadcast;

_root.Networks[_root.keselek_id].nama = nama_text.text;

_root.Networks[_root.keselek_id].net_id = hasil.net_id;

_root.Networks[_root.keselek_id].subnet = hasil.subnet_mask;

_root.Networks[_root.keselek_id].broadcast = hasil.broadcast;

nama_text.text = _root.Networks[_root.keselek_id].nama;

net_id_text.text = _root.Networks[_root.keselek_id].net_id;

subnet_text.text = _root.Networks[_root.keselek_id].subnet;

broadcast_text.text = _root.Networks[_root.keselek_id].broadcast;

} else {

_root.warning('masukan nama');

_root.pesanku = "Input data salah";

}

} else {

_root.warning('masukan nama');

_root.pesanku = "Input data blum lengkap";

-

}

} else {

_root.warning('masukan nama');

_root.pesanku = "Net ID pernah digunakan";

}

}

Save router

on (release) {

var cek_subnet1;

var cek_subnetku1;

var cek_subnet2;

var cek_subnetku2;

var cek_subnet3;

var cek_subnetku3;

_root.Routers[_root.keselek_id].nama = nama_text.text;

if ((eth0_text.text.length>0) && (subnet_eth0_text.text.length>0)) {

var golek = _root.cek_ip_sama(eth0_text.text, _root.keselek_id, _root.keselek_tipe);

if (golek == false) {

cek_subnetku1 = _root.handler_cek_ip_subnet(subnet_dec0.text);

temp_array.push(eth0_text.text);

var cek_ip1 = _root.handler_cek_ip_subnet(eth0_text.text);

-

if (cek_ip1 && cek_subnetku1) {

var hasil_0:Object = _root.hitung_ip(_root.Pecah_ip(eth0_text.text), subnet_eth0_text.text);

_root.Routers[_root.keselek_id].ip_array[0] = eth0_text.text;

_root.Routers[_root.keselek_id].subnet_array[0] = hasil_0.subnet_mask;

_root.Routers[_root.keselek_id].net_id_array[0] = hasil_0.net_id;

_root.Routers[_root.keselek_id].broadcast_array[0] = hasil_0.broadcast;

eth0_text.text = _root.Routers[_root.keselek_id].ip_array[0];

subnet_eth0_text.text = _root.Routers[_root.keselek_id].subnet_array[0];

} else {

_root.warning('ip salah');

_root.pesanku = "Input data belum lengkap";

}

}

}

if ((eth0_text.text.length == 0) && (subnet_eth0_text.text.length == 0)) {

_root.Routers[_root.keselek_id].ip_array[0] = undefined;

_root.Routers[_root.keselek_id].subnet_array[0] = undefined;

_root.Routers[_root.keselek_id].net_id_array[0] = undefined;

_root.Routers[_root.keselek_id].broadcast_array[0] = undefined;

eth0_text.text = "";

subnet_eth0_text.text = "";

}

if ((eth1_text.text.length>0) && (subnet_eth1_text.text.length>0)) {

-

cek_subnetku2 = _root.handler_cek_ip_subnet(subnet_dec1.text);

temp_array.push(eth1_text.text);

var cek_ip2 = _root.handler_cek_ip_subnet(eth1_text.text);

if (cek_ip2 && cek_subnetku2) {

var hasil_1:Object = _root.hitung_ip(_root.Pecah_ip(eth1_text.text), subnet_eth1_text.text);

_root.Routers[_root.keselek_id].ip_array[1] = eth1_text.text;

_root.Routers[_root.keselek_id].subnet_array[1] = hasil_1.subnet_mask;

_root.Routers[_root.keselek_id].net_id_array[1] = hasil_1.net_id;

_root.Routers[_root.keselek_id].broadcast_array[1] = hasil_1.broadcast;

eth1_text.text = _root.Routers[_root.keselek_id].ip_array[1];

subnet_eth1_text.text = _root.Routers[_root.keselek_id].subnet_array[1];

} else {

_root.warning('ip salah');

_root.pesanku = "Input data belum lengkap";

}

}

if ((eth1_text.text.length == 0) && (subnet_eth1_text.text.length == 0)) {

_root.Routers[_root.keselek_id].ip_array[1] = undefined;

_root.Routers[_root.keselek_id].subnet_array[1] = undefined;

_root.Routers[_root.keselek_id].net_id_array[1] = undefined;

_root.Routers[_root.keselek_id].broadcast_array[1] = undefined;

eth1_text.text = "";

subnet_eth1_text.text = "";

}

//eth 2

-

if ((eth2_text.text.length>0) && (subnet_eth2_text.text.length>0)) {

cek_subnetku3 = _root.handler_cek_ip_subnet(subnet_dec2.text);

temp_array.push(eth2_text.text);

var cek_ip3 = _root.handler_cek_ip_subnet(eth2_text.text);

if (cek_ip3 && cek_subnetku3) {

var hasil_2:Object = _root.hitung_ip(_root.Pecah_ip(eth2_text.text), subnet_eth2_text.text);

_root.Routers[_root.keselek_id].ip_array[2] = eth2_text.text;

_root.Routers[_root.keselek_id].subnet_array[2] = hasil_2.subnet_mask;

_root.Routers[_root.keselek_id].net_id_array[2] = hasil_2.net_id;

_root.Routers[_root.keselek_id].broadcast_array[2] = hasil_2.broadcast;

eth2_text.text = _root.Routers[_root.keselek_id].ip_array[2];

subnet_eth2_text.text = _root.Routers[_root.keselek_id].subnet_array[2];

} else {

_root.warning('ip salah');

_root.pesanku = "Input data belum lengkap";

}

}

if ((eth2_text.text.length == 0) && (subnet_eth2_text.text.length == 0)) {

_root.Routers[_root.keselek_id].ip_array[2] = undefined;

_root.Routers[_root.keselek_id].subnet_array[2] = undefined;

_root.Routers[_root.keselek_id].net_id_array[2] = undefined;

_root.Routers[_root.keselek_id].broadcast_array[2] = undefined;

eth2_text.text = "";

subnet_eth2_text.text = "";

}

-

/*else {

_root.warning('ip salah');

_root.pesanku = "Input data belum lengkap";

}*/

}

Tampil routing table

on (release) {

_root.blockAction();

dep = 10000;

duplicateMovieClip(_root.routing, 'routing'+dep, dep);

_root['routing'+dep].gotoAndStop(_root.keselek_tipe);

_root['routing'+dep]._x = Stage.width/2;

_root['routing'+dep]._y = Stage.height/2;

_root['routing'+dep].show_list_routing();

Routing tabel frame

onClipEvent (load) {

var someListener:Object = new Object();

someListener.onSetFocus = function() {

temp = Selection.getFocus();

};

Selection.addListener(someListener);

this.visible(false);

function bubblesort2() {

-

var temp:Number;

for (var i = 1; i<_root.Routers[_root.keselek_id].routing_array.length; i++) {

for (var j = 0; j<_root.Routers[_root.keselek_id].routing_array.length-1; j++) {

if (Number(_root.Routers[_root.keselek_id].routing_array[j].subnet_destination)<Number(_root.Routers[_root.keselek_id].routing_array[j+1].subnet_destination)) {

temp = _root.Routers[_root.keselek_id].routing_array[j].subnet_destination;

_root.Routers[_root.keselek_id].routing_array[j].subnet_destination = _root.Routers[_root.keselek_id].routing_array[j+1].subnet_destination;

_root.Routers[_root.keselek_id].routing_array[j+1].subnet_destination = temp;

}

}

}

}

var n = 0;

function show_list_routing(n:Number) {

//max = _root.Routers[_root.keselek_id].routing_array.length;

bubblesort2();

///_root.Routers[_root.keselek_id].routing_array.sortOn("subnet_destination", Array.NUMERIC || Array.DESCENDING);

if (_root.keselek_tipe == "Router") {

this.visible(true);

i = 0;

while (this['list_routing'+i] != undefined) {

removeMovieClip(this['list_routing'+i]);

-

i++;

}

nama_router_txt = _root.Routers[_root.keselek_id].nama;

//max = _root.Routers[_root.keselek_id].routing_array.length;

var max = n+10;

for (var list = n; list<max; list++) {

if (_root.Routers[_root.keselek_id].routing_array[list] != undefined) {

duplicateMovieClip(this.list_routing, 'list_routing'+list, list);

this['list_routing'+list]._x = -230;

this['list_routing'+list]._y = ((list-n)*20)-55;

this['list_routing'+list].destination_text.text = _root.Routers[_root.keselek_id].routing_array[list].destination;

this['list_routing'+list].subnet_destination_text.text = _root.Routers[_root.keselek_id].routing_array[list].subnet_destination;

this['list_routing'+list].via_text.text = _root.Routers[_root.keselek_id].routing_array[list].via;

this['list_routing'+list].id = list;

}

}

}

}

show_list_routing(0);

}

//=================================pc network===========

onClipEvent (enterFrame) {

//_root.Routers[_root.keselek_id];

//dep = _root.getNextHighestDepth();

-

//if (this.getDepth()<dep-1) {

//this.swapDepths(_root.getInstanceAtDepth(dep-1));

//}

if (this.subnet_destination_text.text>32) {

this.subnet_destination_text.text = 32;

}

if (this.subnet_destination_text.text<0) {

this.subnet_destination_text.text = 0;

}

//_root.Routers[_root.keselek_id].routing_array.sortOn(["subnet_destination"], 2);

if (_root.keselek_tipe == "Router") {

nama_router_text.text = _root.Routers[_root.keselek_id].nama;

}

//====================

if (subnet_dec.text != "" && temp == "_level0.routing10000.subnet_dec" && subnet_dec.text != "0") {

subnet_destination_text.text = _root.convert_subnet(subnet_dec.text);

} else {

if (subnet_dec.text == "0") {

subnet_destination_text.text = "0.0.0.0";

}

}

if (subnet_destination_text.text != "" && temp == "_level0.routing10000.subnet_destination_text" && subnet_destination_text.text != "0.0.0.0") {

subnet_dec.text = _root.konvert_menjadi_dec(subnet_destination_text.text);

} else {

-

if (subnet_destination_text.text == "0.0.0.0") {

subnet_dec.text = "0";

}

}

//============

}

Add list

on (release) {

if ((_parent.destination_text.text.length>0) && (_parent.via_text.text.length>0) && (_parent.subnet_destination_text.length<3) && (_parent.subnet_destination_text.text.length>0)) {

var cek_ip = _root.handler_cek_ip_subnet(_parent.destination_text.text);

var cek_gateway = _root.handler_cek_ip_subnet(_parent.via_text.text);

if (cek_ip && cek_gateway) {

_root.Routers[_root.keselek_id].destination = Number(_parent.destination_text.text);

_root.Routers[_root.keselek_id].via = Number(_parent.via_text.text);

_root.Routers[_root.keselek_id].subnet_destination = Number(_parent.subnet_destination_text.text);

_root.Routers[_root.keselek_id].routing_array.push({destination:this._parent.destination_text.text, subnet_destination:this._parent.subnet_destination_text.text, via:this._parent.via_text.text});

//if (_root[_root.keselek].routing_array.length>3) {

//_parent.count = _root.Routers[_root.keselek_id].routing_array.length-_parent.biji;

//}

_parent.show_list_routing(0);

-

} else {

_root.warning('masukan nama');

_root.pesanku = "Input data salah";

}

} else {

_root.warning('masukan nama');

_root.pesanku = "Input data blum lengkap";

}

}

Delete list

on (release) {

_root.Routers[_root.keselek_id].routing_array.splice(id, 1);

_parent.show_list_routing(0);

//trace("trtrt");

}

Tampil ip calculator

on (release) {

_root.blockAction();

dep = 301;

duplicateMovieClip(_root.ip_calc, 'ip_calc'+dep, dep);

_root['ip_calc'+dep]._x = 400;

_root['ip_calc'+dep]._y = 250;

}

-

on (rollOver) {

this._width = "60";

this._height = "60";

}

on (rollOut) {

this._width = "27";

this._height = "27";

}

Tombol hitung

on (release) {

if ((t_ip1.text.length>0) && (t_ip2.text.length>0) && (t_ip3.text.length>0) && (t_ip4.text.length>0) && (masking.text.length>0)) {

var ip = t_ip1.text+"."+t_ip2.text+"."+t_ip3.text+"."+t_ip4.text;

trace(ip);

var hasil:Object = _root.hitung_ip(_root.Pecah_ip(ip), masking.text);

//trace(masking);

//masking.text = _root.convert_subnet(hasil.subnet_mask);

mask.text = hasil.subnet_mask;

network.text = hasil.net_id;

broadc.text = hasil.broadcast;

} else {

_root.warning('ip salah');

_root.pesanku = "Input data salah";

-

}

}