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
8
|
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 t®ansport (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).
|
51
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
|