2 bab 2 landasan teori 2.1 open system interconnection...
TRANSCRIPT
8
2 BAB 2
LANDASAN TEORI
2.1 Open System Interconnection (OSI) 7-layer
Model referensi OSI merupakan model jaringan deskriptif yang dibuat pada tahun
1984 oleh International Organization for Standardization (ISO). Model ini
menyediakan kumpulan set standar bagi para vendor untuk memastikan kompatibilitas
dan interoperabilitas yang lebih baik dari berbagai macam teknologi jaringan yang
dibuat oleh perusahaan-perusahaan di seluruh dunia. Model referensi ini juga digunakan
sebagai kerangka kerja yang dipakai untuk memahami bagaimana informasi berjalan
dalam sebuah jaringan (Cisco System, 2003).
Model referensi OSI telah menjadi model utama dalam komunikasi jaringan.
Walaupun banyak model lain yang muncul, sebagian besar pengguna dan produsen
produk jaringan memakai model ini. Hal ini disebabkan karena model OSI memiliki
keuntungan sebagai berikut:
• Mengurangi kompleksitas
• Standarisasi interface
• Mempermudah rekayasa secara modular
• Memastikan interoperabilitas teknologi yang berbeda
• Mempercepat evolusi
• Mempermudah pembelajaran dan pengajaran
Model Referensi OSI memiliki tujuh lapisan dengan fungsinya masing-masing.
Sebuah data yang melewati model ini akan melalui tujuh lapisan tersebut secara
9
berurutan tergantung dari arah data tersebut. Lapisan-lapisan tersebut berikut fungsinya
mulai dari lapisan teratas adalah sebagai berikut (Cisco System, 2003):
1. Layer Application
Lapisan ini merupakan lapisan ke-7 referensi model OSI, memberikan layanan
ke jaringan komputer untuk aplikasi-aplikasi pemakai dan mengadakan
komunikasi dan program ke program. Lapisan ini digunakan pada saat pencarian
suatu file di file server. Selain itu, email, browsing internet juga bekerja pada
lapisan ini. Lapisan ini merupakan lapisan yang paling dekat dengan user.
2. Layer Presentation
Agar suatu data dapat dilihat oleh pemakai, informasi tersebut harus dapat
ditampilkan dalam bentuk teks maupun grafis pada layar monitor pemakai.
Lapisan ini berfungsi untuk menampilkan teks dan grafis. File format yang
digunakan antara lain ASCII, EBCDIC, JPEG, MPEG, TIFF, PICT, RTF, MIDI
maupun Quick Time.
3. Layer Session
Lapisan ini membuka, mengatur dan menutup sesi antara aplikasi aplikasi.
Protokol yang berfungsi pada lapisan ini adalah NFS, NETBEUI, RPC, SQL, X
Windows System, Apple Talk Session Protocol (ASP) dan Digital Network
Architecture Session Control Program (DNASCP).
Lapisan ini juga menentukan apakah informasi yang diminta oleh pemakai
berasal dari komputer local atau komputer lain dalam jaringan. jika informasi
berasal dari komputer lain, session akan memulai koneksi ke jaringan.
10
4. Layer Transport
Lapisan ini bertanggung jawab atas keutuhan transmisi data. Lapisan ini sangat
penting karena lapisan ini yang memisahkan lapisan tingkat atas dengan lapisan
bawah. Pada lapisan ini data diubah menjadi segmen atau data stream.
Terdapat 2 jenis koneksi ada lapisan transport yakni connection-oriented dan
connectionless-oriented. Pada connection-oriented, digunakan sistem three way
handsake untuk melakukan koneksi yakni semua paket yang dikirim mendapat
tanda terima (acknowledge) dari penerima dan paket yang tidak diterima akan
dikirim ulang dan terjadi pengurutan kembali paket seperti asal waktu
pengiriman. Sedangkan pada sistem connectionless-oriented, pengirim tidak
mengirimkan tanda terima dan paket-paket tidak diurut kembali seperti asalnya.
Namun tipe koneksi ini memiliki keunggulan yaitu penggunaan bandwidth yang
efektif karena semua jalur yang tersedia dapat digunakan oleh pemakai-pemakai
lain. Oleh karena jalur yang akan digunakan bergantung pada paket per paket,
maka jika terjadi kemacetan di jalur satu, paket dapat disalurkan ke jalur lain.
5. Layer Network
Lapisan ini menyediakan topologi logika jaringan yang memungkinkan
penggunaan alamat logika seperti IP address. Dengan menggunakan alamat
logika ini, lapisan network ini berfungsi meneruskan paket-paket dari satu node
ke node lain di jaringan komputer dan memilih jalur yang terbaik dalam
meneruskan paket di jaringan. Di lapisan ini segmen-segmen diubah menjadi
paket-paket dengan menambah informasi mengenai alamat logika yang dituju
dan alamat asal dari paket. Router bekerja pada lapisan ini.
11
6. Layer Data Link
Lapisan ini mengatur topologi jaringan, notifikasi kesalahan dan flow control.
Switch dan bridge bekerja pada lapisan ini. Lapisan ini menyediakan fasilitas
alamat hardware dan mengolah paket dari lapisan di atasnya menjadi frame
dengan menambahkan informasi mengenai alamat hardware (MAC Address)
yang dituju dan alamat asal.
7. Layer Physical
Lapisan ini menentukan spesifikasi dari koneksi fisik jaringan seperti tipe kabel,
tipe konektor, hubungan pin konektor dengan kabel, dan tipe interface suatu
peralatan jaringan. Lapisan ini juga bertanggung jawab untuk mengaktifkan dan
mengatur physical interface dari jaringan komputer.
Setiap lapisan bertanggung jawab untuk meneruskan data dalam bentuk yang
sesuai kepada lapisan diatas dan dibawahnya.
Gambar 2.1 Alur data melewati OSI 7-layer (Cisco System, 2003)
12
Gambar 2.2 Protokol-protokol internet pada masing-masing layer(Cisco System, 2003)
2.2 TCP/IP
Dalam komunikasi antara dua atau lebih network device diperlukan sebuah standar
yang saling dimengerti satu sama lain layaknya sebuah bahasa bagi manusia agar dapat
berkomunikasi dengan baik antara satu sama lain. Dalam sebuah network istilah
“bahasa” tersebut disebut dengan protokol. TCP/IP sendiri sebenarnya mengacu kepada
sekumpulan set protokol yang terdiri dari dua protokol utama: Transmission Control
Protocol dan Internet Protocol. TCP/IP memungkinkan terjadinya komunikasi antar
komputer yang memiliki perbedaan karakteristik dari segi hardware ataupun software.
2.2.1 Sejarah TCP/IP
Model TCP/IP dikembangkan oleh U.S. Department of Defense (DoD) dengan
alasan ingin merancang suatu jaringan yang handal. DoD menginginkan suatu
pengiriman data yang handal antar jaringan yang luas dengan mengabaikan segala
situasi yang terjadi pada salah satu bagian dalam jaringan tersebut. Model TCP/IP
memungkinkan hal ini dapat terjadi sehingga model TCP/IP digunakan sebagai standar
dalam internet.
13
Model TCP/IP memiliki 4 buah lapisan yakni lapisan application, transport,
Internet, dan network access. Lapisan yang terdapat pada model TCP/IP memiliki
kesamaan nama dengan lapisan yang terdapat pada model OSI dengan masing-masing
fungsi yang berbeda.
Versi TCP/IP kemudian distandarisasi pada bulan September tahun 1981. IPv4 (IP
versi 4) dengan panjang 32 bit, ditulis dalam bentuk dotted desimal dan dipisahkan
dengan tanda titik sedangkan Ipv6 (IP versi 6) memiliki panjang 128 bit dan ditulis
dalam bentuk heksadesimal dan dipisahkan dengan tanda titik dua (:). Pada tahun 1992
muncul standarisasi dari generasi IP yang baru yakni IPng yang didukung oleh Internet
Engineering Task Force (IETF). IPng kemudian dikenal sebagai IPv6 yang akan banyak
digunakan di kemudian hari karena keterbatasan IPv4 yang digunakan sekarang ini.
2.2.2 Arsitektur TCP/IP
Sebagai sebuah protokol TCP/IP juga memiliki model referensi sendiri yang terdiri
dari empat lapisan: application layer, transport layer, Internet layer dan network access
layer; dengan keterangan sebagai berikut (Cisco System, 2003):
1. Layer Application
Lapisan aplikasi menangani protocol tingkat tinggi, issues of representation,
proses encoding dan control dialog. Protokol TCP/IP menggabungkan semua
aplikasi yang berhubungan dalam satu lapisan dan memastikan data telah
dibungkus dalam satu paket sebelum dikirim ke lapisan berikutnya. TCP/IP
tidak hanya mencakup spesifikasi untuk lapisan internet dan transport saja
seperti IP dan TCP melainkan spesifikasi pada aplikasi umum lainnya. TCP/IP
14
juga memiliki protocol untuk mendukung transfer data, email dan login secara
jarak jauh. Selain itu juga mendukung File Transfer Protocol (FTP), Trivial
File Transfer Protocol (TFTP), Network File System (NFS), Simple Mail
Transfer Protocol (SMTP), Terminal emulation (Telnet), Simple Network
Management Protocol (SNMP), dan Domain Name System (DNS).
Gambar 2.3 Protokol internet pada layer Aplication (Cisco System, 2003)
2. Layer Transport
Lapisan transport menyediakan layanan pengiriman dari sumber host kepada
host tujuan. Lapisan ini membangun koneksi logik antara komputer pengirim
dan penerima dalam suatu jaringan. Perpindahan segmen protokol dan aplikasi
dari lapisan atas dalam bentuk aliran data yang sama antar komputer pengirim
dan penerima. Aliran data pada lapisan transport menyediakan layanan
pengiriman secara end to end.
Internet sering digambarkan dengan awan. Lapisan transport mengirim data
paket dari komputer pengirim ke komputer tujuan melalui awan. Kontrol end
to end dilakukan dengan metode sliding window dan ketepatan urutan data dan
acknowledgment (ACK) merupakan fungsi utama dari lapisan transport
15
dengan mengggunakan TCP. Apabila ditambah dengan UDP maka lapisan
transport dapat berfungsi untuk membagi data aplikasi pada lapisan atas dan
mengirimkan segmen dari suatu alat ke alat lainnya.
Gambar 2.4 Protokol internet pada layer transport (Cisco System, 2003)
3. Layer Internet
Fungsi dari lapisan internet adalah untuk memilih jalur terbaik dari jaringan
yang dilalui dalam pengiriman paket. Protokol utama yang digunakan adalah
Internet Protocol (IP). Pemilihan jalur terbaik dan pertukaran paket dilakukan
dalam lapisan ini.
Protocol-protokol yang beroperasi pada layer internet TCP/IP adalah:
IP menyediakan layanan connectionless, dan pengiriman paket melalui
jalur terbaik. IP tidak mengurusi isi dari paket melainkan hanya
menentukan jalur untuk sampai ke tujuan.
Internet Control Message Protocol (ICMP) menyediakan layanan kontrol
dan pertukaran pesan.
Address Resolution Protocol (ARP) menentukan alamat lapisan data link,
alamat MAC untuk alamat IP yang diketahui.
16
Reverse Address Resolution Protocol (RARP) menentukan alamat IP
ketika hanya alamat MAC yang diketahui.
IP melakukan operasi sebagai berikut:
Menentukan paket dan skema pengalamatan.
Mengirimkan data antar lapisan internet dan lapisan network access
Mengirimkan paket ke suatu remote host
IP kadang disebut sebagai protokol yang unreliable, karena IP tidak
menyediakan layanan pengecekan kesalahan dan perbaikan. Fungsi tersebut
dilakukan oleh lapisan atas dari lapisan transport atau lapisan application.
Gambar 2.5 Protokol internet pada layer Internet (Cisco System, 2003)
4. Layer Network Access
Lapisan network access yang disebut juga lapisan host-to-network merupakan
lapisan yang berhubungan dengan segala sesuatu yang diperlukan sebuah paket
untuk terhubung secara fisik ke dalam jaringan. juga termasuk teknologi LAN
17
dan WAN serta segala detail yang terdapat dalam lapisan physical dan data-
link pada OSI.
Lapisan network access juga berfungsi memetakan alamat IP ke alamat fisik
perangkat keras dan penyatuan paket IP ke dalam frame. Lapisan ini akan
melakukan koneksi dengan media fisik jaringan sesuai dengan tipe perangkat
keras dan tatap muka dari jaringan tersebut.
Gambar 2.6 Protokol internet pada layer Network Access (Cisco System, 2003)
2.3 Perbandingan Model OSI dan TCP/IP
Persamaan model OSI dan TCP/IP:
• Keduanya memiliki lapisan-lapisan.
• Keduanya memiliki lapisan aplikasi dengan layanan yang berbeda.
• Menggunakan teknologi packet-switched.
• Perlu diketahui oleh ahli jaringan.
18
Perbedaan model OSI dan TCP/IP:
• TCP/IP menggabungkan lapisan presentation dan lapisan session ke
dalam lapisan application.
• TCP/IP menggabungkan lapisan data link dan physical pada model OSI
ke dalam 1 lapisan network access.
• TCP/IP tampak lebih sederhana karena memiliki jumlah lapisan yang
lebih sedikit.
• Lapisan transport pada model TCP/IP yang menggunakan UDP tidak
selalu menjamin pengiriman paket yang reliable, tidak seperti lapisan
transport pada model OSI.
Internet dibangun dengan menggunakan standar pada protokol TCP/IP. Model
TCP/IP diakui karena protokolnya sedangkan model OSI digunakan sebagai pedoman
untuk memahami proses komunikasi.
Gambar 2.7 Perbandingan antara OSI Model dengan TCP/IP Model (Cisco System, 2003)
19
2.4 IP Address
Setiap perangkat keras (host) yang berada dalam suatu jaringan setidaknya
mempunyai satu alamat IP yang bersifat unik yang membedakan dari host lain sehingga
mereka dapat ditempatkan dalam suatu jaringan tertentu. Setiap komputer dalam
jaringan TCP/IP harus diberi suatu pengenal yang unik atau yang disebut alamat IP yang
bekerja pada lapisan 3 pada lapisan OSI. Alamat IP terdiri dari 32 bit di mana dalam
penulisannya IP dibagi menjadi 4 bagian. Masing-masing bagian terdiri dari 8 bit dan
dibatasi dengan titik. Contoh: “202.155.89.19”. Pengalamatan IP terdiri dari 2 bagian
yaitu bagian network number dan host number. Bit-bit network ditandai dengan angka
binary 1 dan bit-bit host ditandai dengan angka binary 0. Pembagian bit-bit network dan
host ini ditentukan dengan Subnet Mask.
Contoh: “202.155.89.19 / 255.255.255.0”, menyatakan bahwa 24 bit pertama
menyatakan network dari IP address tersebut, dan sisanya 8 bit merupakan bit-bit host
bagi IP tersebut. Dari IP tersebut dapat disimpulkan bahwa network dari IP tersebut
adalah 202.155.89.0, sedangkan 202.155.89.19 merupakan alamat IP dari host tersebut.
Beberapa teknologi dalam pengalamatan IP adalah IP subnetting, dan Variable-Length
Subnet Mask (VLSM).
Sebuah paket IP terdiri dari data-data yang berasal dari lapisan di atasnya
ditambah dengan IP header. Berikut susunan dari sebuah paket IP:
20
Gambar 2.8 Susunan paket IP (Cisco System, 2003)
Pengalamatan IP terbagi dalam lima kelas yaitu:
1. Kelas A
Kelas A merupakan kelas yang memiliki jumlah host number terbanyak,
sehingga kelas ini memiliki jumlah network interface terbanyak yang dapat
ditampung. Kelas ini biasa digunakan oleh perusahaan yang memiliki
jaringan dalam skala yang besar. Alamat IP pada kelas A dimulai dari 1.0.0.0
sampai 126.255.255.255.
2. Kelas B
Kelas B memiliki 2 octet host number yang memungkinnya untuk
menampung 65534 network interface pada sebuah subnet. Alamat IP kelas B
digunakan untuk jaringan dengan skala menengah. Alamat IP pada kelas B
berkisar antara 128.0.0.0 sampai 192.167.255.255.
3. Kelas C
Kelas C memiliki 1 octet host number yang memungkinkannya untuk
menampung 254 network interface pada sebuah subnet. Kelas ini memiliki
jumlah network interface yang paling sedikit dan juga paling banyak untuk
21
jaringan berskala kecil. Alamat pada kelas C dimulai dari 192.168.0.0
sampai 223.0.0.0.
4. Kelas D
Kelas D merupakan kelas khusus yang tidak dapat dipakai oleh publik karena
satu blok kelas ini khusus dipakai untuk keperluan multicast. Multicast
adalah jenis transmisi layaknya broadcast, namun dalam skala yang lebih
kecil dan dapat ditentukan.
5. Kelas E
Kelas E adalah kelas IP yang tidak digunakan dan khusus disimpan dengan
tujuan sebagai kelas cadangan untuk keperluan di masa mendatang.
Gambar 2.9 Struktur kelas IP (Cisco System, 2003)
Selain pembagian menurut alamat yang mampu ditampung, IP address juga dibagi
menjadi dua macam berdasarkan pemakaiannya di internet:
1. Public IP address
Public IP adalah alamat IP yang dipakai untuk koneksi ke jaringan Internet
(global). Public IP bersifat unik oleh karena itu tidak boleh ada dua buah
22
public IP yang sama yang terhubung ke internet. Namun demikian, karena
terbatasnya jumlah alamat IP yang dapat dialokasikan, maka digunakan
alamat private IP untuk pemberian alamat IP. Alamat public IP dapat
diperoleh dari suatu Internet Service Provider (ISP) dengan sejumlah biaya
tertentu.
2. Private IP address
Private IP merupakan solusi dari penggunaan public IP yang terbatas dengan
penggunaan alamat IP yang bersifat lokal untuk suatu jaringan. Karena
antara suatu jaringan dengan jaringan lainnya tidak terhubung, maka
pemberian alamat IP yang sama pada dua jaringan tidak menimbulkan
masalah dengan catatan bahwa pemberian alamat IP pada host dalam suatu
jaringan lokal private harus tetap bersifat unik.
Untuk menghubungkan jaringan lokal tersebut ke jaringan Internet,
diperlukan suatu public IP, di mana semua private IP jaringan lokal dalam
Internet akan diterjemahkan sebagai public IP tersebut. Prosedur ini disebut
NAT (Network Address Translation) yang biasanya dilakukan oleh sebuah
router.
2.5 Topologi Jaringan
Topologi jaringan mendeskripsikan struktur dari suatu jaringan. Terdapat 2 jenis
topologi yakni topologi fisik dan topologi logik. Topologi fisik merupakan topologi
jaringan yang memberikan gambaran tentang jalur kabel atau media, sedangkan topologi
logik lebih menjelaskan bagaimana suatu media diakses untuk pengiriman data.
23
Secara umum, topologi fisik terbagi menjadi beberapa jenis, seperti:
1. Topologi bus
Topologi ini menggunakan sebuah kabel sebagai backbone yang memiliki alat
terminal di kedua sisi ujungnya. Host-host terhubung langsung ke backbone ini.
2. Topologi ring
Topologi ini menghubungkan satu host dengan host lainnya dan host terakhir
terhubung ke host yang pertama. Topologi ini akan terlihat seperti sebuah
lingkaran (ring).
3. Topologi star
Topologi ini menghubungkan host-host dengan satu device secara terpusat.
4. Topologi extended-star
Topologi ini menghubungkan beberapa jaringan yang menggunakan topologi
star. Sebuah line dari masing-masing hub atau switch dihubungkan dengan
sebuah device secara terpusat. Keunggulan topologi ini adalah dapat dengan
mudah untuk memperluas segmen atau area jaringan.
5. Topologi hierarchical
Topologi ini mirip dengan topologi extended-star, akan tetapi topologi ini
dihubungkan dengan sebuah komputer yakni seorang administrator untuk
mengatur traffic jaringan pada topologi.
6. Topologi mesh
Topologi ini menghubungkan satu host ke semua host yang berada di
jaringannya. Keunggulan topologi ini adalah jaringan yang reliable, karena bila
24
satu path atau line terputus, tidak akan mempengaruhi jaringan karena masih
tersedia path-path lainnya dalam pengiriman data.
Gambar 2.10 Topologi Fisik (Cisco System, 2003)
2.6 Jaringan Nirkabel
Gambar 2.11 Arsitektur Jaringan Nirkabel (Cisco System, 2003)
Jaringan nirkabel adalah suatu jaringan yang menggunakan frekuensi radio untuk
komunikasi antara perangkat komputer dan akhirnya titik akses yang merupakan dasar
dari komunikasi radio dua arah yang tipikalnya bekerja di bandwidth 2,4 GHz (802.11b,
25
802.11g) atau 5 GHz (802.11a). Kebanyakan peralatan mempunyai kualifikasi Wi-Fi,
IEEE 802.11b atau akomodasi IEEE 802.11g dan menawarkan beberapa level keamanan
seperti WEP dan atau WPA. Tulang punggung jaringan biasanya menggunakan kabel,
dengan satu atau lebih titik akses jaringan menyambungkan pengguna nirkabel ke
jaringan berkabel. Jaringan nirkabel memungkinkan orang melakukan komunikasi dan
mengakses aplikasi dan informasi tanpa kabel..
2.7 Hotspot
Berdasarkan Geier (2005) hotspot adalah lokasi LAN nirkabel publik. Hotspot
terdapat di tempat-tempat umum yang ramai dikunjungi termasuk bandara, hotel,
convention center, dan kedai kopi. Di lokasi ini terdapat wireless access point yang
menghubungkan perangkat mobile (seperti laptop atau PDA) ke internet dengan
menggunakan standar teknologi WLAN (wi-fi).
Berdasarkan pendapat Vladimirov et al(2004, p550) access point adalah sebuah
peralatan jaringan pada layar dua yang menghubungkan jaringan kabel dan nirkabel dan
mengontrol parameter jaringan di jaringan LAN nirkabel.
Fitur yang ditawarkan pada hotspot secara komersial dapat berupa:
• Sebuah portal di mana user diarahkan untuk otentikasi dan pembayaran
• Pilihan pembayaran menggunakan kartu kredit, dll.
• Mengijinkan akses situs tertentu dengan gratis (walled garden)
Meskipun demikian, banyak hotspot terbuka dan digunakan dengan gratis, baik
yang dibuat oleh perusahaan pemerintah atau swasta untuk menarik perhatian
26
pelanggan. Saat ini pun banyak universitas maupun sekolah yang telah memiliki
hotspot.
2.8 Dial – up
Dial-up adalah sebuah metode untuk mengakses internet dengan menggunakan
modem yang terhubung dengan sebuah komputer dan saluran telepon yang mendial ke
node Internet service provider (ISP) untuk membuat hubungan antara modem ke
modem, yang lalu dirouting ke internet.
Walaupun penggunaan akses internet dengan kecepatan yang lebih tinggi sudah
banyak digunakan di negara-negara barat, banyak orang masih menggunakan dial-up
karena mereka masih belum memiliki akses atau tidak mampu membayarnya. Dial-up
tidak memerlukan tambahan infrastruktur lainnya selain jaringan telepon. Karena
jaringan telepon tersedia di seluruh dunia, dial-up akan tetap berguna terutama untuk
para traveller.
2.9 VPN
Kepanjangan dari Virtual Private Network, adalah sebuah jaringan komunikasi
pribadi yang biasanya digunakan di dalam perusahaan, atau oleh beberapa perusahaan
berbeda atau organisasi, untuk berkomunikasi melalui jaringan yang lebih luas. Lalu
lintas pesan VPN dapat dibawa melalui infrastruktur jaringan publik (internet) pada
protokol standar, atau melalui jaringan pribadi service provider yang ditegaskan dengan
Service Level Agreement (SLA) antara konsumen VPN dan layanan VPN dari provider.
27
2.10 Client dan Server Model
Gambar 2.12 Cara kerja Sistem berbasis Client Server
Client - Server model adalah bentuk distributed computing dimana sebuah
program (client) berkomunikasi dengan program lain (server) dengan tujuan untuk
bertukar informasi. Pada umumnya sebuah client memiliki tugas sebagai berikut
(Morgan, 2004):
1. Menyediakan user interface.
2. Menterjemahkan permintaan user ke dalam bentuk protokol yang sesuai.
3. Mengirimkan permintaan user ke server.
4. Menunggu respon dari server.
5. Menterjemahkan respon tersebut ke dalam format yang dapat dibaca.
6. Menyajikan hasil format tersebut ke user.
Kata client juga sering disebut dengan kata host yang menandakan bahwa device
tersebut tersambung dalam sebuah jaringan. Sedangkan sebuah server memiliki
tanggung jawab sebagai berikut:
1. Mendengarkan permintaan dari client.
2. Memproses permintaan tersebut.
3. Mengembalikan hasil proses tersebut ke client.
28
Dalam praktek sehari-harinya terdapat berbagai macam server yang ada dalam
jaringan. Setiap server tersebut memiliki fungsi khusus sesuai dengan tujuan pembuatan
server tersebut. Beberapa contoh server berikut kegunaannya:
• Web Server
Web server berfungsi untuk menyediakan layanan web berupa situs kepada user.
Web server menggunakan user interface berupa web browser untuk dapat
berkomunikasi dengan user dalam jaringan.
• Database Server
Database server adalah sebuah server yang didedikasikan khusus untuk
menampung data-data dalam jumlah besar yang disimpan menggunakan
perangkat lunak khusus. Database server memiliki tugas utama untuk melayani
permintaan data dari user.
2.11 NAT (Network Address Translation)
Merupakan suatu mekanisme untuk mengubah suatu alamat IP private yang
bersifat internal ke dalam bentuk alamat IP yang bersifat publik pada saat akses
eksternal (internet) sehingga NAT dapat meningkatkan keamanan dengan
menyembunyikan alamat IP internal (private).
Pengaturan NAT dapat dilakukan secara statis ataupun dinamis. Pengaturan NAT
statis dengan pemetaan alamat IP lokal dan global secara satu-satu banyak digunakan
pada host yang memiliki alamat IP yang konsisten yang dapat diakses dari internet
seperti pada server, router ataupun switch. Sedangkan pengaturan NAT secara dinamis
digunakan untuk memetakan suatu alamat IP private menjadi beberapa alamat IP public.
29
Masing-masing host dengan alamat IP private dapat memiliki beberapa alamat IP public
yang digunakan ketika mengakses keluar. PAT (Port Address Translation) merupakan
mekanisme NAT secara dinamis dimana beberapa alamat IP private dipetakan ke dalam
sebuah alamat IP public. Hal ini dimungkinkan karena setiap alamat IP private dikenal
melalui suatu port.
Keuntungan NAT:
• Menghilangkan proses perubahan alamat IP pada setiap host ketika terjadi
pergantian ISP (perubahan alamat IP publik). NAT dapat menghilangkan proses
pengalamatan ulang pada semua host yang memerlukan akses eksternal sehingga
dapat menghemat waktu dan uang.
• Pengalamatan yang menggunakan aplikasi port-level multiplexing. Dengan
menggunakan PAT, host internal dapat menggunakan sebuah alamat IP public
untuk komunikasi eksternal. Dengan menggunakan sistem ini, maka dapat
menghemat penggunaan alamat IP public karena hanya dibutuhkan satu atau
beberapa alamat eksternal untuk mendukung komunikasi host internal.
• Meningkatkan keamanan jaringan. Karena jaringan internal yang bersifat private
tidak menampilkan alamat IP atau jaringan topologi ketika menggunakan NAT
untuk akses eksternal.
2.12 DHCP (Dynamic Host Configuration Protocol)
Merupakan suatu mekanisme yang digunakan untuk pemberian alamat IP atau
informasi konfigurasi jaringan secara dinamis dalam suatu jaringan. DHCP merupakan
alat untuk menghemat waktu konfigurasi bagi network administrator.
30
DHCP bekerja dalam model client/server. DHCP memungkinkan suatu DHCP
client dalam suatu jaringan IP untuk menerima konfigurasi dari sebuah server DHCP.
Umumnya, konfigurasi yang paling sering diterima client dari server adalah alamat IP.
Alamat IP yang diterima client dari server akan berada dalam suatu selang waktu
administrasi tertentu. Ketika waktu berakhir, client akan meminta alamat yang lain,
walaupun kadang client tetap diberi alamat IP yang sama dengan yang sebelumnya.
Server DHCP juga dapat menawarkan informasi yang lain seperti alamat server
DNS, WINS dan nama domain. Kebanyakan DHCP server memungkinkan
administrator untuk mendefenisikan secara khusus alamat MAC dari client yang dapat
dilayani dan secara otomatis diberi alamat IP yang sama.
DHCP menggunakan UDP sebagai protokol transport. Client akan mengirim
pesan melalui port 67 dan server mengirim pesan kepada client melalui port 68.
2.13 Teknologi AAA
Pada awalnya, sebelum AAA diperkenalkan, peralatan individu digunakan untuk
mengotentikasi pengguna, tanpa standar yang resmi, setiap mesin menggunakan metode
otentikasi yang berbeda, beberapa menggunakan profil, ada yang menggunakan CHAP
(Challenge/Handshake Authentication Protocol), dan yang lainnya menggunakan
database SQL. Masalah utama dari model-model tersebut adalah scalability, dimana
menyimpan sejumlah data pada satu peralatan jaringan bukanlah penghalang dalam
manajemen data, tetapi peningkatan kapasitas dengan menambah peralatan lain
(masing-masing dengan metode otentikasinya sendiri), dengan cepat menjadi masalah
besar.
31
Tim kerja AAA yang dibentuk oleh IETF menciptakan arsitektur yang dapat
mengatasi permasalahan diatas. Lebih jelasnya, ada suatu kebutuhan untuk
memfokuskan pada desentralisasi peralatan dan pengawasan peralatan dalam jaringan
yang berbeda-beda. ISP mulai menawarkan layanan selain dial up, termasuk ISDN,
xDSL, dan konektivitas kabel-modem. Oleh karena itu, sangat diperlukan suatu standard
dimana user dapat diverifikasi, logon, dan diawasi selama berada dalam jaringan. Untuk
itu muncullah arsitektur AAA.
Pertanyaan-pertanyaan dibawah ini dapat mewakili fungsi dari AAA yaitu:
1. Siapakah kamu?
2. Hak apa saja yang saya berikan kepada kamu?
3. Apa saja yang kamu lakukan selama menggunakan hak itu?
2.13.1 Authentication
Otentikasi adalah proses untuk memverifikasi seseorang (atau mesin). Metode
otentikasi yang familiar adalah mengggunakan kombinasi ID dan password, dimana
pengetahuan tentang password adalah menunjukkan bahwa pengguna adalah asli.
Perkembangan pesat e-commerce dan transaksi bisnis melalui internet memaksa pemilik
untuk memiliki sebuah alat otentikasi yang lebih kuat dan terpercaya. Digital
Certificates adalah salah satu solusinya, dan 5 tahun kedepan, diperkirakan digital
certificates akan menjadi bagian PKI (Public Key Infrastructure) yang paling diminati
pada internet.
Aspek penting dari otentikasi adalah untuk mengizinkan 2 objek yang unik
membentuk sebuah hubungan percaya, keduanya diasumsikan pengguna yang asli.
32
Kepercayaan antara system mengizinkan fungsi seperti proxy server, dimana sistem
memperbolehkan request atas nama sistem yang lain dan mengizinkan implementasi
AAA untuk menjangkau jaringan heterogen yang didukung oleh layanan dan client yang
berbeda tipe.
2.13.2 Authorization
Otorisasi menggunakan sejumlah peraturan atau template untuk memutuskan apa
yang dapat dilakukan seorang user yang telah diotentikasi pada sistem. Contohnya,
dalam kasus sebuah ISP, ia boleh memutuskan apakah sebuah alamat IP statis
bertentangan dengan alamat DHCP. Sistem administrator yang mendefinisikan
peraturan ini.
Jadi boleh dibilang, implementasi smart dari server AAA memiliki logika yang
akan menganalisa sebuah permintaan dan memberi izin akses apa yang diberikan, tidak
peduli apakah permintaan yang sisanya valid atau tidak. Contohnya, seorang client dial-
up melakukan koneksi dan meminta multilink bonding. Sebuah server AAA yang umum
akan secara sederhana menolak permintaan sisanya, tetapi implementasi smart akan
menelusuri permintaan tersebut, memutuskan apakah client hanya diperbolehkan
koneksi dial-up, dan mengizinkan saluran itu bersamaan dengan menolak yang lainnya.
2.13.3 Accounting
Accounting berfungsi menghitung dan menyimpan sumber yang diambil oleh
pengguna selama akses. Ini termasuk jumlah waktu sistem atau jumlah data yang
33
dikirim dan diterima selama satu sesi. Accounting dijalankan dengan menyimpan
statistik suatu sesi dan informasi penggunaan dan digunakan untuk kontrol otorisasi,
billing, analisis trend, utilisasi sumber, dan aktivitas perencanaan kapasitas.
Data Accounting mempunyai beberapa kegunaan. Seorang administrator dapat
menganalisa requests yang sukses untuk menentukan kapasitas dan memprediksi
muatan sistem untuk masa depan. Seorang pemilik bisnis dapat menghitung waktu yang
digunakan untuk suatu layanan tertentu berdasarkan bill. Seorang security analyzer
dapat melihat pada requests yang ditolak, melihat apakah ada suatu pola yang
mencurigakan, dan memungkinkan serangan dari seorang hacker atau freeloader. Data
accounting memiliki manfaat yang besar pada administrator server AAA.
2.14 Remote Authentication Dial-In User Service (RADIUS)
Dalam suatu jaringan yang luas dengan resource yang banyak, proses otentikasi
akan lebih mudah jika dilakukan oleh sebuah server dengan menggunakan protokol
AAA (Authentication, Authorization, Accounting). Protocol AAA yang banyak
digunakan sekarang ini adalah RADIUS. RADIUS merupakan suatu mekanisme client-
server dimana sebuah Network Access Server (NAS) biasanya bertindak sebagai client
dari RADIUS. RADIUS dirancang dengan tujuan agar sebuah NAS dapat meneruskan
sebuah request pengguna ke server. Dalam proses otentikasi, NAS bertanggungjawab
untuk meneruskan informasi dari pengguna yang melakukan request dan menunggu
respon dari server yang akan mengolah informasi tersebut. Ketika proses accounting
diperlukan, NAS juga bertanggungjawab untuk menyimpan data pemakaian dan
mengirimnya ke server. Sedangkan server RADIUS bertugas mengolah request dan
34
otentikasi dari pengguna, mengembalikan informasi yang dibutuhkan untuk konfigurasi
NAS agar dapat melayani user.
2.14.1 Sejarah
RADIUS muncul untuk memenuhi kebutuhan akan proses otentikasi, otorisasi dan
accounting pada pengguna yang ingin mengakses resource dalam suatu jaringan yang
luas. Pembuatan RADIUS berawal dari Merit Network yang merupakan salah satu
perusahaan terbesar yang bergerak di bidang internet. Awalnya Merit membangun suatu
jaringan dial-up untuk mengakses resource di California. Untuk dapat mengakses
resource tersebut, proses otentikasi diperlukan. Seiring dengan perkembangan waktu,
user juga bertambah banyak akibatnya perusahaan menyadari akan perlunya suatu
mekanisme otentikasi yang lebih fleksibel dengan daya jelajah yang lebih luas.
Kemudian Merit membuat suatu proposal yang ditujukan kepada perusahaan
Livingston. Kemudian kedua perusahaan melakukan pertemuan dan konferensi dan
akhirnya menghasilkan versi awal dari RADIUS.
Tipe RADIUS yang pertama yakni RADIUS RFC (2039) pertama kali muncul
pada bulan Januari 1997. Sedangkan RADIUS RFC (2865) yang merupakan standard
radius yang digunakan sekarang ini dikeluarkan pada bulan Juni 2000. Pada
penambahan terhadap standar RFC, spesifikasi akuntansi RADIUS juga
didokumentasikan dalam sebuah RFC yang tidak standar, dan pada bulan Juni 2000
sebuah RFC yang merupakan perluasan RADIUS juga ditulis ke dalam fitur tambahan
seperti yang terdapat pada standar resmi RFC. Sejak tahun 1997, RADIUS telah
diterima oleh standar IETF. cIETF RADIUS RFC bersamaan dengan sistim akuntansi
35
dan RFC dari perluasan RADIUS telah menjadi standar resmi untuk para pengguna
RADIUS.
2.14.2 Struktur paket data RADIUS
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Code | Identifier | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | | Authenticator | | | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Attributes ... +-+-+-+-+-+-+-+-+-+-+-+-+-
Gambar 2.13 Struktur Paket Data RADIUS
Struktur paket data RADIUS pada Gambar 1 terdiri dari lima bagian, yaitu:
1. Code
Memiliki panjang 1 oktet, digunakan untuk membedakan tipe pesan RADIUS yang
dikirimkan melalui paket. Kode-kode tersebut (dalam desimal) ialah:
Tabel 2.1 Kode Pesan pada RADIUS
Kode Penjelasan 1 Access-Request 2 Access-Accept 3 Access-Reject 4 Accounting-Request 5 Accounting-Response 11 Access-Challenge 12 Status-Server (experimental) 13 Status-Client (experimental) 255 Reserved
36
2. Identifier
Memiliki panjang satu octet, bertujuan untuk mencocokkan permintaan.
3. Length
Memiliki panjang dua oktet, memberikan informasi mengenai panjang paket.
4. Authenticator
Memiliki panjang 16 oktet, digunakan untuk membuktikan balasan dari RADIUS
server, selain itu digunakan juga untuk algoritma password.
5. Attributes
Berisikan informasi yang dibawa pesan RADIUS, setiap pesan dapat membawa satu
atau lebih atribut. RADIUS dapat membawa informasi dengan fungsi yang berbeda-
beda. Informasi tersebut dibawa dalam bentuk atribut. Setiap atribut dapat terdiri
dari paket yang di dalamnya terdapat informasi mengenai panjang variabel dan
bentuk yang sesuai dengan format tipe (type), panjang (length) dan nilai (value)
(TLV). Tipe atribut berisi angka dari 1 sampai 255 (1 oktet) yang menggambarkan
tipe dari atribut. Pada tipe atribut juga terdapat suatu nomor khusus yang bertindak
sebagai gateway bagi vendor untuk menerapkan suatu atribut khusus. Panjang
atribut menggambarkan panjang dari isi atribut secara keseluruhan dengan nilai
minimal 3 atau lebih besar. Field ini memiliki kesamaan dengan field Length pada
paket data RADIUS. Sedangkan nilai atribut berisi informasi atau karakteristik yang
akan dibawa.
Secara khusus, keseluruhan proses transaksi pada RADIUS berasal dari Attribute-
Value Pairs (AVP) dari client ataupun server yang mengandung property dan
karakteristik yang mendukung transaksi AAA. Untuk meningkatkan keamanan, RFC
37
RADIUS melarang beberapa atribut dikirim dalam paket tertentu. Misalnya
password yang tidak boleh dikirim dalam proses komunikasi pada saat otentikasi
ataupun otorisasi sehingga atribut User-Password tidak diperbolehkan untuk dikirim
sebagai paket balasan dari server kepada client.
Gambar 2.14 Format atribut standar AVP
Suatu pesan dapat membawa atribut yang berbeda dengan fungsi yang berbeda
sesuai dengan tujuan dari pesan tersebut.
2.14.3 Jenis pesan pada RADIUS
• Access-Request
Merupakan pesan yang dihasilkan oleh NAS yang ditujukan kepada server
untuk meneruskan request dari user.
• Access Challenge
Merupakan pesan yang dikirim server RADIUS kepada NAS dan secara
umum digunakan untuk mengetahui keadaan dari NAS ataupun client dengan
melakukan metode negosiasi tertentu.
• Access Accept
Merupakan pesan yang dikirim server RADIUS kepada NAS untuk
menandakan suatu request yang telah berhasil diterima (pemberian grant).
38
• Access Reject
Merupakan pesan yang dikirim oleh server untuk menolak sebuah request.
• Accounting request
Merupakan pesan yang dikirim oleh NAS kepada server accounting untuk
menyampaikan informasi accounting mengenai layanan yang diberikan
kepada pengguna.
• Accounting response
Merupakan pesan yang dikirim oleh server kepada NAS untuk memberitahu
bahwa informasi accounting yang dikirim telah diterima dan memberikan
hasil yang diperoleh dari perhitungan fungsi accounting yang dilakukan oleh
server.
• Status Server dan Client
Merupakan pesan yang digunakan untuk melakukan uji coba.
2.14.3.1 Struktur Code pada paket untuk proses otentikasi dan otorisasi
1. Access-Request
Tabel 2.2 Struktur paket data pada Access-Request
Tipe Paket Request
Kode 1
Identifier Unik untuk setiap request
Panjang Panjang header ditambah semua tambahan data atribut
Authenticator Request
Data Atribut 2 atau lebih
39
Paket Access-Request digunakan pada saat melakukan request terhadap suatu
layanan dalam suatu jaringan. Client mengirimkan paket request ke server RADIUS
dengan meminta layanan apa yang diinginkan. Faktor utama dari pengiriman adalah
kode field yang terdapat pada header paket yang diset menjadi 1 yang merupakan nilai
desimal unik untuk paket request. Kemudian RFC akan membalas request ke semua
paket request yang valid yakni berupa otorisasi atau sebaliknya penolakan.
Payload pada paket Access-Request terdiri dari atribut username untuk
mengidentifikasi user yang akan mengakses ke resource jaringan. Selain itu, juga
terdapat password yang di-hash dengan menggunakan MD5.
2. Access-Accept
Tabel 2.3 Struktur paket data pada Access-Accept
Tipe Paket Response
Kode 2
Identifier Sama dengan Access-Request untuk setiap transaksi
Panjang Panjang header ditambah semua tambahan data atribut
Authenticator Response
Data Atribut 0 atau lebih
Paket Access-Accept dikirim oleh server RADIUS kepada client untuk
memberikan ACK (acknowledge) bahwa request client telah diterima. Jika semua
request dalam payload Access-Request diterima, maka server RADIUS akan mengganti
kode field pada paket response menjadi 2. ketika client menerima paket accept, akan
mencocokkannya dengan paket response dengan menggunakan field identifier. Paket
yang tidak sesuai akan dibuang. Dalam paket Access-Accept juga dimungkinkan
40
terdapat beberapa atribut informasi. Atribut ini menggambarkan tipe layanan yang telah
diotentifikasi dan otorisasi sehingga client dapat melakukan pengaturan sesuai dengan
layanan tersebut.
3. Access-Reject
Tabel 2.4 Struktur paket data pada Access-Reject
Tipe Paket Response
Kode 3
Identifier Sama dengan Access-Request
Panjang Panjang header ditambah semua tambahan data atribut
Authenticator Response
Data Atribut 0 atau lebih
Server RADIUS dibutuhkan untuk mengirimkan paket Access-Reject kembali ke
client jika layanan yang diminta ditolak. Penolakan dapat didasarkan pada peraturan
sistem, hak akses atau berdasarkan kriteria tertentu. Terdapat 2 jenis atribut untuk
payload tipe paket ini yakni Reply-Message dan Proxy-State.
4. Access-Challenge
Tabel 2.5 Struktur paket data pada Access-Challenge
Tipe Paket Response
Kode 11
Identifier Sama dengan Access-Request
Panjang Panjang header ditambah semua tambahan data atribut
Authenticator Response
Data Atribut 0 atau lebih
41
Jika server menerima informasi yang salah dari client atau ingin memperoleh
informasi lebih dari client untuk memastikan keabsahan user, server dapat mengirimkan
paket Challenge kepada client. Client yang menerima paket ini harus mengirim paket
Access-Request yang baru dengan menambahkan beberapa informasi yang dibutuhkan.
Seperti pada paket Access-Reject, hanya terdapat dua jenis atribut yang dapat disertakan
dalam paket yakni atribut State dan Reply-Message.
2.14.3.2 Struktur Code pada paket untuk proses accounting
1. Accounting-Request
Tabel 2.6 Struktur paket data pada Accounting-Request
Tipe Paket Request
Kode 4
Identifier Unik untuk setiap request; unik untuk setiap transmisi dari data yang berubah
Authenticator Request
Data Atribut 0 atau lebih atribut
Paket Accounting-Request dikirim dari client kepada server dengan kode field 4.
Ketika server menerima paket ini, maka server akan mengirim acknowledge kepada
client kecuali apabila paket tersebut tidak bisa diproses.
2. Accounting-Response
Tabel 2.7 Struktur paket data pada Accounting-Response
Tipe Paket Response
Kode 5
Identifier Respon terhadap Accounting-Request
Authenticator Response
42
Tipe Paket Response
Data Atribut 0 atau lebih atribut
Paket Accounting-Response merupakan paket acknowledge yang dikirim server
accounting kepada client untuk menandakan bahwa request dari client telah diterima.
Jika paket tersebut telah diproses dan telah berhasil disimpan, RFC mengeset kode field
pada bagian acknowledge menjadi 5 sebagai tanda response. Karena identifier dari paket
response sama dengan field Accounting-Request, client dapat dengan mudah
mencocokkan kedua paket tersebut bersamaan dan sekaligus dapat mengecek request
mana yang telah dipenuhi dan yang belum.
2.14.4 Cara kerja RADIUS
2.14.4.1 Proses Otentikasi
RADIUS mendukung beberapa jenis protokol yang berbeda untuk mengirim data
user yang khusus baik yang ditujukan ataupun yang berasal dari sebuah server
otentikasi. Dua jenis protocol yang paling sering digunakan adalah Password
Authentication Protocol (PAP) dan Challenge Handshake Authentification Protocol
(CHAP). Selain itu, RADIUS juga mendukung beberapa atribut dan metode yang
dikembangkan oleh vendor.
2.14.4.1.1 Password Authentication Protocol (PAP)
Protokol PAP menggunakan atribut User-Password dalam melakukan request
terhadap paket pada RADIUS server. sedangkan field User-Name tidak digunakan
43
karena ada kemungkinan terjadi perubahan nilai pada field tersebut oleh RADIUS server
pada saat melalui suatu rantai proxy.
Algoritma yang digunakan untuk menyimpan password user yang sebenarnya
terdiri dari beberapa tahapan. Pertama-tama client mendeteksi identifier dan shared
secret untuk request yang asli kemudian mengirimkannya pada proses hashing MD5.
shared secret merupakan suatu mekanisme untuk meningkatkan keamanan dan
integritas dari transaksi. Shared secret dihasilkan dengan cara random yang hanya
diketahui oleh client dan server. Shared secret biasanya digunakan dalam operasi yang
membutuhkan suatu nilai atau informasi untuk disembunyikan. Berikutnya, password
client yang asli diproses dengan melalui proses XOR dan hasil yang didapat dari kedua
proses tersebut dan ditempatkan dalam field User-Password. Pada saat server RADIUS
menerima field tersebut, field tersebut diproses dengan urutan yang sebaliknya dengan
proses pada client untuk menentukan kebenaran dari data tersebut.
Langkah-langkah proses otentikasi sebuah client yang ingin mengakses server
RADIUS melalui suatu NAS (Network Access Server) adalah sebagai berikut:
• NAS akan meminta username dan password pada client yang mencoba untuk
terhubung dengan menggunakan protokol PAP.
• Pada saat menerima username dan password dari client, NAS akan membuat
sebuah pesan Access Request yang ditujukan kepada RADIUS server dengan
urutan sebagai berikut: NAS membuat RA (Request Authenticator) dan
menggunakannya bersamaan dengan shared secret yang juga digunakan
RADIUS server untuk menghasilkan suatu atribut User-Password yang
menyembunyikan password user yang sebenarnya. Kemudian NAS akan
44
menunggu respon dari server. NAS akan memasukkan RA ke dalam field
Authenticator pada pesan Access Request.
• Jika NAS tidak menerima respon dari server pada jangka waktu tertentu,
NAS akan mengirimkan request kembali ke server yang sama atau ke server
yang berbeda.
• Pada saat server RADIUS menerima Access Request, server RADIUS akan
mejalankan prosedur tertentu untuk mengecek kebenaran dari request
tersebut. Salah satunya adalah mengecek apakah terdapat shared secret. Dan
kemudian mengambil password user dari atribut User-Password dan
mengecek apakah user terdapat pada database dan memiliki password yang
sama dengan yang terdapat pada server.
• Jika pengecekan berhasil, server RADIUS akan mengirimkan pesan Access
Accept kembali ke NAS.
• Sebaliknya jika gagal, maka server RADIUS akan mengirimkan pesan
Access Reject kembali ke NAS.
2.14.4.1.2 Challenge Handshake Authentification Protocol (CHAP)
Protokol CHAP setingkat lebih atas dibanding dengan protokol PAP karena
memiliki tingkat keamanan yang lebih baik karena password user tidak dikirim pada
proses komunikasi antara client dan server sebaliknya client merespon challenge yang
dihasilkan server (authenticator) pada proses otentikasi. Langkah-langkahnya adalah
sebagai berikut:
45
• Client yang menggunakan protokol CHAP melakukan request terhadap NAS
untuk terhubung ke jaringan.
• NAS akan menghasilkan suatu challenge yang berukuran 16 oktet dan
mengirimkannya kepada client melalui pesan CHAP Challenge. Pada pesan ini
juga terdapat ID CHAP.
• User akan melakukan respon terhadap challenge dengan menggunakan pesan
response yang mengikutsertakan ID CHAP yang sama dengan yang terdapat
pada pesan CHAP Challenge, username CHAP, dan respon terhadap challenge.
Respon ini kemudian akan dihitung dengan menggunakan hashing MD5, dengan
secret user (yang diketahui oleh RADIUS server dan client) sebagai kunci.
MD5(ID, secret, challenge).
• NAS kemudian menghasilkan suatu Access Request. NAS memasukkan user
name CHAP, ID CHAP, password CHAP yang berasal dari user kemudian
mengirimkannya bersamaan dengan Access Request kepada server RADIUS.
• server RADIUS melihat password berdasarkan username dan menghitung
hashing dengan cara yang sama seperti pada user. Jika atribut CHAP-Challenge
tidak terdapat pada pesan, server akan menggunakan nilai pada field Request
Authenticator pada Access Request. Server kemudian akan membandingkan hasil
hashing dengan nilai yang terdapat pada password CHAP. Jika sesuai, maka
server mengirim Access Accept kembali ke NAS dan jika tidak, akan
mengirimkan paket Access Reject.
46
Gambar 2.15 Proses pengiriman pesan pada RADIUS dengan menggunakan CHAP sebagai protokol otentikasi
2.14.4.2 Proses Accounting
RADIUS2865 tidak menyediakan spesifikasi untuk mendukung layanan
accounting, sebaliknya accounting pada RADIUS didefenisikan dalam informasi RFC
yang terpisah yaitu pada RADACC2866. Proses accounting juga menggunakan model
client-server dimana client (NAS) akan mengirim informasi accounting dari user ke
server RADIUS yang menjalankan mesin accounting.
Terdapat 2 jenis pesan pada accounting RADIUS yakni Accounting Request dan
Accounting Response. Accounting Request merupakan pesan yang dikirim dari client
RADIUS kepada server RADIUS, dan Accounting Response merupakan pesan yang
dihasilkan server RADIUS ketika menerima dan memproses Accounting Request.
Gambar 2.16 Pesan accounting pada RADIUS
47
Proses komunikasi dalam accounting RADIUS dimulai dengan adanya paket
Accounting-Request dari client. Client akan menghasilkan paket Accounting Start yang
merupakan suatu jenis khusus dari paket Accounting-Request. Paket ini berisi informasi
layanan apa yang tersedia dan untuk apa layanan tersebut digunakan. Paket ini
kemudian dikirim kepada server accounting RADIUS yang akan memberikan
acknowledge sebagai tanda data telah berhasil diterima. Setelah selesai, client akan
mengirim paket Accounting Stop (jenis khusus dari paket Accounting-Request) yang
akan mengikutsertakan jenis layanan, statistik penggunaan seperti lama waktu, jumlah
data yang dikirim, kecepatan rata-rata, dan detail lainnya. Server accounting kemudian
akan memberikan acknowledge sebagai tanda paket Accounting Stop telah diterima. Jika
server tidak dapat menangani isi dari paket Accounting-Request, server tidak akan
mengirimkan acknowledge kepada client atas paket Accounting-Request yang dikirim
client. Dalam proses accounting, proxy juga dapat digunakan seperti halnya pada proses
otentifikasi dan otorisasi. Server accounting dapat meneruskan request dari client ke
server lainnya untuk membantu memproses paket Accounting-Request dari client.
Gambar 2.17 Urutan pertukaran pesan dalam proses accounting RADIUS
48
2.15 Client dan Server Side Scripting
Pemrograman web (scripting) terbagi atas dua jenis, yaitu client-side scripting dan
server-side scripting. Client-side scripting adalah script yang pengolahannya dilakukan
pada komputer client setelah mendownloadnya dari web server dan menampilkannya
pada browser. Sedangkan server-side scripting adalah pemrograman web di mana
pengolahan script tersebut dilakukan pada web server, dan mengirimkan hasil olahan
tersebut berupa halaman web kepada user. Contoh client-side scripting adalah vbscript
dan javascript. Sedangkan server-side scripting contohnya adalah ASP, ASP.NET, PHP,
JSP.
2.16 Java Server Pages (JSP) dan Servlet
JSP merupakan singkatan dari Java Server Pages. JSP merupakan sebuah bahasa
teknologi yang didasarkan pada bahasa Java, yang dapat digunakan untuk membentuk
halaman-halaman web yang bersifat dinamis. Teknologi ini dikembangkan oleh Sun
Microsystems. Berbeda dengan applet, suatu fitur pada bahasa Java yang
memungkinkan pengembang membuat aplikasi web yang dieksekusi pada sisi klien, JSP
menggunakan pendekatan pemrosesan di sisi server (Web Server). Salah satu
keuntungannya adalah memungkinkan untuk membuat aplikasi yang independen
terhadap keberadaan sistem Java di sisi client.
Servlet adalah kelas-kelas di java yang digunakan untuk memperluas kemampuan
server yang menyimpan aplikasi yang akan diakses melalui model pemrograman
berbasis request-response. Meskipun servlet dapat merespon berbagai macam tipe
request, umumnya digunakan untuk memperluas kemampuan aplikasi yang disimpan di
49
web server. Sebagai contoh, paket javax.servlet dan javax.servlet.http menyediakan
antarmuka dan kelas untuk menulis servlet.
2.17 Apache Tomcat Web Server
Web Server adalah sebuah aplikasi yang terletak pada sebuah server dan berfungsi
untuk menyediakan halaman web kepada web browser pada komputer client dengan
menggunakan HyperText Transfer Protocol (HTTP). Apache adalah salah satu aplikasi
web server yang dikembangkan dengan tujuan untuk menyediakan sebuah web server
yang aman, efisien, dan dapat dikembangkan secara luas. Apache didistribusikan secara
gratis kepada seluruh penggunanya (karena berbasis open source).
2.18 MySQL
MySQL merupakan sebuah relational database management system (RDBMS)
yang bersifat open source (http://www.mysql.com). Dengan menggunakan konsep
RDBMS, MySQL tidak menyimpan data ke dalam sebuah area yang besar namun
menyimpan data-data ke dalam tabel-tabel database. MySQL tetap menggunakan
Structured Query Language (SQL) di dalam memproses data di dalam database.
MySQL mengimplementasikan konsep client-server yang terdiri dari daemon
mysqld dan beragam jenis aplikasi client dan library. MySQL pertama kali dikeluarkan
pada Januari 1998. MySQL telah menjadi sebuah open source database server yang
paling populer di seluruh dunia. Hal ini disebabkan karena MySQL memiliki kecepatan
pemrosesan data, reliabilitas dan kemudahan di dalam pengembangan yang cukup
50
tinggi. Selain itu MySQL juga dapat digunakan dalam berbagai platform seperti Linux,
UNIX, MacOS X dan Microsoft Windows.
2.19 Teori Interaksi Manusia dan Komputer
Dalam perancangan UI (User Interface) suatu situs web ataupun portal, perlu
diperhatikan beberapa hal yang dapat mempengaruhi user dalam menggunakan web
tersebut. Perancangan UI tersebut hendaknya memudahkan dalam mengaksesnya dan
menarik bagi user. Berikut ini adalah prinsip – prinsip dalam perancangan UI:
Kenali Perbedaan
Yaitu membedakan siapakah yang akan menggunakan rancangan tersebut, apakah
pemula (first time user), menengah (knowledgeable intermittent user), ataupun
mahir (expert frequent user). Kemudian rancang UI tersebut sesuai kebutuhan
masing – masing user tersebut.
Gunakan Delapan Aturan Emas Perancangan UI
Adapun Delapan Aturan Emas tersebut adalah:
Berusaha untuk konsisten.
Memungkinkan frequent users menggunakan shortcuts.
Memberikan umpan balik yang informatif.
Merancang dialog yang memberikan penutupan (keadaan akhir).
• Memberikan pencegahan kesalahan dan penanganan kesalahan yang sederhana.
Memungkinkan pembalikan aksi yang mudah.
Mendukung pusat kendali internal (internal locus of control).
• Mengurangi beban ingatan jangka pendek.
51
Cegah Kesalahan
2.20 Sistem Operasi Linux
Sistem operasi merupakan jembatan penghubung antara aplikasi dengan hardware
yang menyediakan sebuah level abstraksi sehingga aplikasi yang dibuat tidak tergantung
hanya pada hardware tertentu saja. Linux dalam hal ini merupakan salah satu sistem
operasi yang cukup dikenal di kalangan pengguna jaringan sebagai salah satu sistem
operasi yang handal.
Linux pada awalnya dibuat oleh seorang mahasiswa Finlandia yang bernama Linus
Torvalds. Semula Linux merupakan proyek hobi yang diinspirasikan dari Minix, yaitu
sistem UNIX kecil yang dikembangkan oleh Andrew Tanenbaum. Linux versi 0.01
dikerjakan sekitar bulan Agustus 1991. Kemudian pada tanggal 5 Oktober 1991, Linus
mengumumkan versi resmi Linux, yaitu versi 0.02 yang hanya dapat menjalankan shell
bash (GNU Bourne Again Shell) dan gcc (GNU C Compiler).
Saat ini Linux adalah sistem UNIX yang sangat lengkap, bisa digunakan untuk
jaringan, pengembangan software dan bahkan untuk pekerjaan sehari-hari. Linux
sekarang merupakan alternatif sistem operasi yang jauh lebih murah jika dibandingkan
dengan sistem operasi komersial (misalnya Windows 9x/NT/2000/ME). Linux
mempunyai perkembangan yang sangat cepat. Hal ini dapat dimungkinkan karena Linux
dikembangkan oleh beragam kelompok orang. Keragaman ini termasuk tingkat
pengetahuan, pengalaman serta geografis.
Sistem operasi Linux menyediakan beberapa keuntungan sebagai berikut:
1. Open Source
52
Sistem operasi linux didistribusikan dengan lisensi open source. Open source
disini memiliki arti bahwa kode program dari sistem operasi tersebut terbuka
untuk umum. Lisensi ini memperbolehkan modifikasi dari kode program asli
sebuah program namun dengan syarat tetap menyertakan kode asli tersebut.
Keuntungannya adalah tersedianya versi gratis dari sistem operasi ini, selain itu
berkat lisensi ini sistem operasi linux dapat berkembang dengan cepat berkat
dukungan dari komunitas di seluruh dunia. Komunitas yang responsif dan kuat
menjadi salah satu keuntungan utama mengapa linux menjadi salah satu sistem
operasi terkemuka sekarang ini.
2. Stabil
Linux relatif lebih stabil dibandingkan dengan sistem operasi lainnya. Server
yang menggunakan sistem operasi linux umumnya memiliki down-time yang
jauh lebih sedikit dibandingkan server yang menggunakan sistem operasi
lainnya. Hal ini disebabkan antara lain karena sistem operasi linux tidak
memiliki virus yang dapat membahayakan kegiatan operasional sehari-hari. Hal
ini didukung pula oleh dukungan komunitas yang saling membantu apabila
ditemukan kerusakan (bug) atau lubang keamanan dalam sebuah program.
3. Transparan dan fleksibel
Sistem operasi linux dibuat dengan dukungan komunitas di seluruh dunia,
sehingga user dapat mengetahui dengan pasti perkembangan sistem operasi ini,
bagaimana isi dan fitur apa saja yang disertakan, dan bagaimana
53
menggunakannya. Perusahaan dapat lebih yakin bahwa data-data yang disimpan
pada komputer tidak akan diteruskan ke pihak tertentu, karena perusahaan
sendirilah yang menentukan bagaimana isi dan bentuk dari sistem operasi yang
akan mereka pakai. Selain itu, user dapat memilih sendiri dari fitur-fitur yang
ada, menseleksi aplikasi yang akan mereka pakai sehingga sistem operasi yang
terbentuk benar-benar spesifik sesuai dengan kebutuhan mereka masing-masing
tanpa memasukkan kode program atau aplikasi lainnya yang tidak penting.
2.21 Activity Diagram
Activity Diagram merupakan suatu variasi dari statechart yang memusatkan
perhatian pada aliran aktivitas yang dikendalikan oleh proses internal dalam sebuah
objek daripada event yang bersifat eksternal. Dalam activity diagram, hampir semua
state berupa state aktivitas yang menggambarkan eksekusi dari suatu operasi. Transisi
keluaran dari sebuah state secara normal disebabkan dari penyelesaian operasi. Activity
diagram menggambarkan perubahan pada state atau aktivitas dalam sebuah prosedur.
Activity diagram menyerupai flowcharts dan sangat berguna pada event dengan
perubahan state pemicu yang secara internal dihasilkan sehingga dapat menggambarkan
aliran kontrol dalam sebuah prosedur.
Activity diagram dapat digunakan untuk beberapa tujuan, diantaranya :
• Untuk menggambarkan tugas manusia (contohnya untuk menggambarkan suatu
model bisnis).
54
• Untuk menggambarkan fungsi dalam suatu sistem yang direpresentasikan dengan
menggunakan usecase.
• Untuk menggambarkan logika dari operasi dalam spesifikasi operasi.
State action merupakan suatu state yang memiliki aksi internal dan paling sedikit
memiliki satu transisi keluar yang dipicu oleh penyelesaian dari aksi internal.
2.22 State Transition Diagram (STD)
STD menggambarkan keadaan (state) pada suatu keadaan, event yang
menyebabkan perubahan suatu keadaan (state) menuju keadaan (state) lain, dan akibat
yang dihasilkan akibat perubahan tersebut.
Simbol – simbol STD adalah:
• State, simbol:
, merepresentasikan keadaan pada suatu waktu.
• Event / action, symbol:
, merepresentasikan hubungan antara keadaan (state) yang
berbeda. Pada panah tersebut ditulis dengan event yang
menyebabkan perubahaan tersebut dan akibat yang dihasilkan.
55
2.23 Linear Sequential Model
Gambar 2.18 Linear Sequential Model
Berdasarkan pendapat Pressman (2001, p28-30) linear sequential model sering kali
disebut classic life cycle atau the waterfall model, menyarankan sebuah pendekatan
sistematis, berurutan untuk pembuatan software yang dimulai pada level sistem dan
berkembang melalui analisis, desain, koding, testing, dan support. Gambar 2.18 di atas
mengilustrasikan urutan langkah pada linear sequential model.
Tabel 2.8 Keuntungan dan Kerugian Linear Sequential Model
Keuntungan Kerugian Menyediakan template (serangkaian template) untuk metode analisis, desain, koding, dan testing
Proyek sesungguhnya tidak menggunakan model ini
Banyak digunakan oleh developer terutama pada aplikasi bisnis dan mudah dimengerti
Walau proses iteratif bisa terjadi, tetapi perubahan yang terjadi bisa membingungkan
Secara signifikan lebih baik daripada metode lain yang kurang terorganisir
Versi pertama software yang bisa bekerja baru bisa dilihat menjelang projek selesai
Model ini dikerjakan secara serial sehingga harus menunggu proses sebelumnya selesai