BAB 2 LANDASAN TEORI

advertisement
7
BAB 2
LANDASAN TEORI
2.1.
General Packet Radio Service (GPRS)
2.1.1
Definisi GPRS
GPRS merupakan kependekan dari General Packet Radio Service. GPRS
adalah servis non-voice (bukan suara) yang memungkinkan informasi dikirimkan
dan diterima melalui jaringan telepon genggam. Servis ini melengkapi teknologi
yang sudah ada sekarang, yaitu Circuit Switched Data dan Short Message Service
(SMS) (Buckingham, 2000).
GPRS yang termasuk dalam kelas 2.5 G adalah standar komunikasi data di
jaringan GSM yang kecepatan transfernya mencapai 115 kbps. Dengan adanya
GPRS ini jaringan GSM bisa memisah paket data kecepatan tinggi dengan suara.
Dengan adanya GPRS ini pengguna bisa terus terkoneksi ke internet. Pengguna
tidak perlu dial-up terus-menerus ketika akan melakukan koneksi ke internet.
Tagihan internet tidak berdasarkan lama waktu penggunaan internet namun
berdasar banyaknya data yang dikirim atau diterima (Lintaka, 2004).
Sebelum ada pengembangan transmisi data lewat GPRS, transmisi data
GSM sangat lambat, hal ini dikarenakan kanal radionya yang bersifat tunggal dan
berkecepatan rendah, dan diperuntukkan khusus bagi setiap pengguna data selama
durasi komunikasi (dedicated). Komunikasi yang bersifat dedicated ini
8
menyebabkan operator harus menyediakan sambungan yang banyak agar semua
pemakai bisa melakukan komunikasi data. Hal ini membuat biaya perawatan dan
penambahan sambungan bagi operator semakin mahal (Lintaka, 2004).
GPRS menggunakan teknologi packet switching yang memungkinkan
semua pengguna dalam sebuah sel dapat berbagi sumber-sumber yang sama;
dengan kata lain para pelanggan menggunakan spektrum radio hanya ketika benarbenar mentransmisikan data. Efisiensi penggunaan spektrum pada akhirnya berarti
kinerja yang lebih baik dan biaya yang lebih rendah. GPRS dapat menawarkan laju
data sampai 115 kbps atau lebih (Lintaka, 2004).
GPRS disebut teknologi 2.5 G karena merupakan langkah awal menuju
teknologi transfer data kecepatan tinggi lewat jaringan nirkabel (3G). Sehingga
sering disebut-sebut sebagai kunci teknologi untuk data bergerak. Secara rinci ada
beberapa faktor yang menjadi pertimbangan bahwa GPRS merupakan teknologi
kunci untuk data bergerak, yakni (Lintaka, 2004):
a. mampu memanfaatkan kemampuan cakupan global yang dimiliki GSM
(2G)
b. memperkaya utilitas investasi untuk perangkat GSM yang sudah ada
c. merupakan teknologi penghubung yang bagus menuju generasi ke 3
d. berbasis paket data yang lebih efisien dalam penggunaan sumber daya
e. memiliki laju data sampai 115 kbps yang berarti dua kali lipat daripada
koneksi dial up 56 kbps yang berlaku
Dengan adanya GPRS ini, operator GSM dapat menambah layanan bagi
para pengguna. Pengguna tidak hanya bisa melakukan komunikasi suara namun
9
juga bisa melakukan komunikasi data. Beberapa layanan yang berkembang dengan
adanya jaringan GPRS ini antara lain (Lintaka, 2004):
a. MMS (Multimedia Messaging System)
Dengan MMS ini pengguna bisa mengirimkan pesan dalam bentuk
multimedia (suara, klip video, gambar).
b. Traffic Monitoring
Dengan layanan ini pengguna bisa melihat keadaan lalu lintas di suatu
tempat seacara real time, dengan maksud agar mengetahui daerah mana
yang macet dan daerah mana yang lalu lintasnya sepi
c. VOIP (Voice Over IP)
Layanan ini biasanya digunakan antar pengguna PDA. Pemakai PDA
pertama harus meng-install suatu program terlebih dahulu baru dapat
menggunakan VOIP. Teknologi ini akan efektif bila tarif GPRS dihitung
secara flat, sehingga walaupun banyak data yang ditransfer namun harga
yang dibayarkan tetap sama.
Teknik dalam transmisi data GSM yang dimiliki oleh GPRS adalah
mengirim dan menerima data dalam paket – paket. Hal ini membuat penggunaan
spektrum radio yang tersedia akan sangat efisien. Sistem GPRS mempunyai
kecepatan lebih besar yaitu 115 kilobits per detik dibandingkan dengan GSM yang
hanya 9,6 kilobits per detik. GPRS yang mendukung jangkauan bandwidth yang
luas, adalah merupakan cara yang efisien untuk penggunaan bandwidth yang
terbatas, dan sangat cocok untuk mengirim dan menerima kepingan data yang
kecil seperti e-mail atau web, atau data – data berkapasitas besar (Buckingham,
2004).
10
GPRS merupakan perkembangan dari sistem mobile data pada GSM yang
menggunakan banyak slot pada saluran radio untuk mendapatkan kecepatan
transmisi yang tinggi. (Buckingham, 2000).
GPRS memiliki beberapa fitur-fitur yang unik, yaitu (Buckingham, 2000):
1.
Kecepatan (Speed)
Secara
teori,
kecepatan
maksimum
yang
dapat
dicapai
dengan
menggunakan GPRS adalah 171,2 kilobit per detik, jika kedelapan timeslot
dipakai pada waktu yang bersamaan untuk 1 user. Ini berarti 3 kali lebih
cepat dibandingkan kecepatan transmisi data yang mungkin dilakukan pada
jaringan telekomunikasi saat ini dan 10 kali lebih cepat dibandingkan
kecepatan Circuit Switched Data Services pada jaringan GSM saat ini.
Dengan mengizinkan informasi ditransmit lebih cepat, dengan sesegera
mungkin, dan lebih efisien melalui jaringan mobile, GPRS memakan biaya
mobile data service yang relatif lebih murah dibandingkan SMS dan Circuit
Switched Data. Kita dapat melihat perbandingan kecepatan data pada
berbagai jenis koneksi pada tabel berikut:
Tabel 2.1. Perbandingan kecepatan data pada berbagai jenis koneksi
(Buckingham, 2000)
Jenis
GPRS
Uplink (Pengiriman) Downlink (Penerimaan)
14 kbps
28-64 kbps
9.6-14 kbps
9.6-14 kbps
HSCSD
28 kbps
28 kbps
Dial-UP
56 kbps
56 kbps
ISDN Standard
64 kbps
64 kbps
256 kbps
512 kbps
2 Mbps
2 Mbps
GSM CSD
ADSL
Broadband
11
2.
Kesegeraan (Immediacy)
GPRS memfasilitasi koneksi yang instant dimana informasi dapat dikirim
atau diterima dengan segera, dimana hal ini sangat mendukung, seiring
dengan berkembangnya kebutuhan akan jangkauan radio. GPRS Tidak
memerlukan koneksi dial-up modem. Karena inilah mengapa pengguna
GPRS seringkali disebut-sebut akan “selalu terhubung”. Penggunaan yang
praktis merupakan keunggulan dari GPRS, dibandingkan dengan Circuit
Switched Data. Immediacy yang tinggi merupakan fitur yang sangat penting
untuk aplikasi yang membutuhkan kecepatan yang tinggi, contohnya pada
otorisasi credit card secara remote, dimana membiarkan customer menunggu
lebih lama hanya 30 detik saja, adalah sesuatu hal yang tidak bisa diterima.
3.
Aplikasi Baru, dan Aplikasi yang Lebih Baik
GPRS memfasilitasi beberapa aplikasi-aplikasi baru yang sebelumnya
belum tersedia pada jaringan GSM, dikarenakan terbatasnya kecepatan pada
Circuit Switched Data (9,6 kbps), dan kapasitas message pada Short
Message Service (SMS). GPRS akan secara penuh memungkinkan aplikasi
internet yang kita gunakan, mulai dari web browsing sampai pada melakukan
chat melalui jaringan mobile.
4.
Akses Layanan
Untuk menggunakan GPRS, user secara spesifik membutuhkan :
a. Mobile phone (telepon genggam) atau suatu terminal yang mendukung
GPRS
b. Berlangganan ke provider telepon seluler yang sudah mendukung GPRS
12
c. Pengetahuan tentang bagaimana cara untuk mengirim atau menerima
informasi dari GPRS dengan menggunakan model yang spesifik dari
sebuah telepon mobile, termasuk konfigurasi software dan hardware.
d. Sebuah tujuan untuk mengirim atau menerima informasi melalui GPRS.
Jika pada SMS, tujuannya seringkali adalah telepon seluler yang lain, maka
pada GPRS tujuannya adalah sebuah internet address, karena pada
dasarnya GPRS didesain untuk membuat internet dapat diakses oleh
pengguna perangkat mobile. Dari awalnya, pengguna GPRS dapat
mengakses web page atau aplikasi internet manapun.
2.1.2. Kunci Utama dalam Jaringan Komunikasi dalam GPRS
2.1.2.1 Packet Switching
GPRS melibatkan proses dalam menghamparkan sebuah packet based air
interface pada circuit switched jaringan GSM yang sudah ada. Ini memberikan
pengguna pilihan untuk menggunakan servis data berbasis paket. Untuk
melengkapi sebuah arsitektur jaringan circuit switched dengan packet switching,
adalah sebuah perkembangan yang cukup besar. Bagaimanapun juga, standar
GPRS dibuat dengan rapi, dengan operator jaringan yang hanya perlu
menambahkan beberapa node-node infrastruktur baru dan membuat software
upgrade untuk beberapa elemen jaringan yang telah ada.
Dengan GPRS, informasi dipecah menjadi paket yang terpisah, tetapi
berhubungan, sebelum ditransmisi dan digabungkan kembali pada sisi penerima.
Packet switching mirip dengan puzzle gambar, dimana gambar dipecah-pecah
13
menjadi bagian-bagian kecil yang kemudian dibungkus dalam bungkus plastik.
Selama pendistribusian bungkus plastik yang berisi puzzle gambar tersebut, dari
pabrik ke pembeli, potongan-potongan gambar tersebut masih berantakan. Ketika
pembeli mengeluarkan semua puzzle-nya dari bungkus plastik, semua puzzle
disusun
kembali
menjadi
gambar
semula.
Semua
potongan-potongan
berhubungan, tetapi cara mereka didistribusikan atau digabungkan ulang dapat
bermacam-macam. Internet sendiri merupakan contoh lain dari jaringan paket
data, merupakan yang paling populer diantara tipe jaringan yang lain
(Buckingham, 2000).
2.1.2.2. Efisisensi Spektrum
Packet switching berarti bahwa sumber daya radio GPRS digunakan hanya
jika pengguna sedang mengirim atau menerima data. Dibandingkan dengan
membuka sebuah saluran radio pada sebuah mobile data user untuk suatu periode
waktu tertentu, sumber daya radio yang tersedia dapat secara bersamaan di-share
diantara beberapa user.
Penggunaan sumber daya radio yang langka secara efisien berarti bahwa
sejumlah besar pengguna GPRS dapat secara potensial membagi bandwidth yang
sama dan dilayani dari satu cell. Jumlah user yang disupport tergantung kepada
aplikasi yang sedang digunakan dan seberapa besar data yang sedang ditransfer.
Karena efisiensi spectrum dari GPRS, maka lebih kecil kepentingan untuk
membangun kapasitas idle yang hanya digunakan pada waktu-waktu puncak
(sedang sibuk). Oleh karena itu, GPRS membiarkan operator jaringan
memaksimalkan penggunaan sumber daya jaringan mereka dengan cara yang
14
dinamis dan fleksibel, bersamaan juga dengan akses user ke resource yang ada
(Buckingham, 2000).
GPRS harus meningkatkan kapasitas waktu puncak pada jaringan GSM
ketika (Buckingham, 2000):
a. GPRS secara bersamaan mengalokasikan sumber daya radio yang langka
secara lebih efisien dengan mendukung konektivitas virtual.
b. Ketika memindahkan traffic dari yang sebelumnya dikirim dengan
menggunakan circuit switched data ke GPRS
c. memperkecil SMS center dan signaling channel loading dengan
memindahkan
beberapa traffic yang sebelumnya dikirim dengan
menggunakan SMS menjadi GPRS.
2.1.2.3. Berbasis Internet
Untuk pertama kalinya, GPRS memungkinkan fungsionalitas internet
dengan mengizinkan internetworking antara internet yang sudah ada dan network
GPRS yang baru. Semua layanan yang digunakan melalui internet, seperti : File
Transfer Protocol (FTP), Web Browsing, chatting, e-mail, telnet, akan tersedia di
jaringan mobile karena adanya GPRS. Kenyataannya, banyak operator jaringan
yang mempertimbangkan peluang untuk menggunakan GPRS yang sangat
membantu dalam tahap menuju Wireless Internet Service Provider.
World Wide Web telah menjadi antar muka komunikasi primer. Seseorang
mengakses internet untuk hiburan, dan pengumpulan informasi, intranet untuk
mengakses informasi perusahaan dan menghubungkan diri dengan kolega, dan
15
extranet untuk mengakses pelanggan dan supplier. Semua ini adalah fasilitas pada
World Wide Web yang menargetkan pada menghubungkan ketertarikan dari
banyak komunitas. Ada sebuah tren diluar dari menyimpan informasi secara lokal
pada paket software yang spesifik pada PC secara remote pada internet. Ketika
Anda ingin memeriksa jadwal atau kontak Anda, kita menjelajah situs internet
seperti portal. Web browsing adalah aplikasi yang sangat penting untuk GPRS.
Karena menggunakan protokol yang sama, jaringan GPRS dapat dilihat
sebagai sebuah sub-network atau bagian jaringan dari internet, dengan kemampuan
GPRS, telepon seluler dilihat sebagai mobile host. Ini berarti, bahwa setiap
terminal GPRS potensial memiliki alamat IP sendiri dan juga dialamatkan
(Buckingham, 2000).
2.1.2.4. Mendukung TDMA dan GSM
Perlu digaris bawahi, bahwa GPRS bukan hanya merupakan sebuah servis
(layanan) yang dirancang untuk diimplementasikan pada jaringan mobile yang
berbasis standar GSM digital mobile phone.
Standar TDMA (Time Division Multiple Access) IS-136, yang populer di
Amerika Selatan, juga mendukung GPRS. Ini sesuai dengan persetujuan untuk
mengikuti jalur evolusi yang tepat menuju generasi ketiga jaringan mobile
(Buckingham, 2000).
16
2.1.3. Arsitektur GPRS
2.1.3.1. Arsitektur Umum
Gambar berikut adalah arsitektur jaringan GPRS secara umum (Lintaka,
2004).
Gambar 2.1. Arsitektur Umum Jaringan GPRS
Pada gambar di atas terlihat bahwa jaringan GPRS merupakan bagian dari
jaringan GSM (beberapa bagian dalam jaringan GPRS dipakai untuk komunikasi
suara).
Berikut penjelasan bagian-bagian gambar tersebut (Lintaka, 2004):
a. MS – Mobile Station
MS dapat dikatakan perangkat selular yang terhubung langsung dengan
jaringan GSM, yaitu SIM (Subscriber Identify Module) Card dan perangkat
17
keras seperti telepon selular, PDA, perangkat komputer yang terhubung
menggunakan jaringan GPRS. MS dapat juga lebih mengarah kepada
komputer yang terhubung ke jaringan GPRS dengan menggunakan GPRS
modem (telepon selular).
b. BSS – Base Station System
BSS terdiri dari BTS (Base Transceiver Station) dan BSC (Base Station
Controller). Di BSS sinyal radio dari BSS akan diterima oleh BTS dan
selanjutnya diteruskan ke BSC. BSC menangani sinyal yang dikirimkan
oleh beberapa BTS.
c. HLR – Home Location Register
HLR adalah database yang menyimpan data pengguna jaringan GPRS.
Informasi yang disimpan dalam HLR misalnya APN (Access Point Name).
d. VLR – Visitor Location Register
VLR adalah database yang berisi informasi semua MS yang sedang
terhubung dengan GPRS.
e. SGSN – Serving GPRS Support Node
SGSN adalah komponen utama jaringan GPRS. SGSN akan meneruskan
paket data dari atau ke MS.
f. GGSN – Gateway GPRS Support
GGSN juga merupakan komponen utama jaringan GPRS. GGSN
mengubah paket data GSM dari SGSN menjadi paket TCP/IP. GGSN dan
SGSN digunakan sebagai penghitung pembayaran pemakaian internet.
g. EIR – Equiptment Identity Register
18
EIR adalah database yang berisi data tentang perangkat bergerak. Dalam
EIR
bisa
berisi
data-data
IMEI
dari
telepon
selular
yang
diperbolehkan/tidak diperbolehkan memakai GPRS.
h. AuC – Authentication Center
AuC adalah database yang berisi informasi pengguna yang diperbolehkan
memakai jaringan GPRS. AuC merupakan bagian dari HLR.
i. GPRS backbone networks
GPRS backbone network adalah intranet dari jaringan GPRS. GPRS
backbone networks adalah IP based.
2.1.3.2. Aristektur Jaringan GPRS Backbone
Bagian yang paling penting dari jaringan GPRS adalah SGSN dan GGSN.
Walaupun dua bagian ini secara fisik bisa dijadikan dalam satu server, namun
untuk menjaga keamanan dan kehandalan, biasanya oleh pihak operator
didistribusikan dalam jaringan GPRS backbone.
Dengan distribusi ini, usaha untuk mengimplementasikan server-server
akan lebih fleksibel. Arsitektur bisa dirancang sedemikian rupa, dan disesuaikan
dengan keadaan di masa depan, misalnya jika ada penambahan server baru, tidak
akan merubah keseluruhan sistem.
Di bawah ini adalah gambar dari GPRS backbone dimana pada gambar
sebelumnya hanya digambarkan dalam 1 blok saja (Lintaka, 2004).
19
Gambar 2.2. Arsitektur Jaringan GPRS Backbone
Berikut adalah penjelasan dari masing-masing blok (Lintaka, 2004):
a. CG - Charging Gateway.
Charging Gateway bertugas menghitung informasi banyaknya paket data
yang lewat dan kemudian mentotal biaya pemakaian data. Total data ini
dikirim ke sistem billing. Di sistem billing akan dihitung biaya pemakaian
GPRS pengguna.
b. BG - Border Gateway.
Border Gateway menghubungkan jaringan GPRS antar operator sehingga
komunikasi data antar operator berbeda bisa dilakukan. BG ini secara teori
adalah bagian yang paling aman dan paling efisien, hal ini berguna agar
transfer data antar jaringan operator yang berbeda terjadi secara cepat dan
aman.
c. DNS - Domain Name Sever
20
Server yang menyediakan layanan merubah logical name ke alamat IP atau
sebaliknya. DNS selain mengubah alamat IP untuk jaringan internet, juga
mengubah alamat IP untuk jaringan lokal GPRS sendiri. Untuk jaringan
lokal biasanya digunakan mengubah alamat APN ke alamat IP.
d. LIG - Lawful Interception Gateway
Bagian ini berguna untuk menyimpan data traffic spesifik untuk tiap-tiap
pengguna. LIG berisi informasi (log) traffic data yang ditransfer oleh
pengguna. Hal ini berguna bila ada masalah keamanan (kejahatan internet)
yang dilakukan melalui jaringan GPRS. Pihak operator bekerjasama
dengan pihak berwajib bisa menganilisis log tersebut dan menentukan
pengguna mana yang melakukan kejahatan lewat jaringan GPRS.
e. IP routers dan switch
Digunakan untuk menghubungkan segmen yang berbeda dari jaringan
GPRS network. Digunakan untuk level aplikasi seperti SNMP, HTTP,
Telnet.
f. Firewall and Network Management Stations (FNMS & NMS)
Firewall digunakan untuk mencegah jaringan GPRS dari serangan dari
luar.
2.2.
CDMA (Code Division Multiple Access)
Code Division Multiple Access atau CDMA adalah sebuah metode multiple
access yang membagi jalurnya berdasarkan waktu (seperti pada TDMA), atau
frekuensi (seperti pada FDMA), tetapi dengan meng-encode data dengan kode-
21
kode tertentu yang dihubungkan dengan sebuah jalur dan menggunakan properti
interferensi konstruktif dari medium sinyal untuk menjalankan multiplexing.
CDMA juga mengacu pada sistem telepon seluler digital yang membuat kegunaan
dari skema multiple access ini, seperti yang sudah dipelopori oleh Qualcomm, atau
W-CDMA (Anonim, 2006).
Gambar 2.3. Skema Multiple Access
(http://www.umtsworld.com/technology/cdmabasics.htm)
2.2.1. Kode CDMA
CDMA menggunakan penyebaran kode yang unik untuk menyebarkan data
baseband sebelum transmisi. Sinyal ditransmisikan melalui sebuah jalur (channel)
yang berada di bawah noise level. Penerimanya kemudian menggunakan korelator
untuk mengumpulkan sinyal yang diinginkan, yang melalui sebuah filter
bandpass.
22
Sinyal yang tidak diinginkan tidak akan dikumpulkan dan tidak akan
melewati filter. Kode mengambil bentuk rancangan sequence nol/satu yang
dihasilkan pada tingkat yang lebih tinggi dibandingkan yang ada pada data
baseband. Tingkat spreading code dikatakan sebagai chip rate, bukan sebgai bit
rate.
Gambar 2.4. Penyebaran CDMA
(http://www.umtsworld.com/technology/cdmabasics.htm)
23
2.2.2. Transmisi dan Penerimaan Data
Pada CDMA, proses transmisi data adalah sebagai berikut (Hendry):
a. Modulasi data
b. Menggabungkan dan menambahkan beberapa channel
Sedangkan pada proses penerimaan data, terjadi proses sebagai berikut
(Hendry):
a. Demodulasi
b. Akuisisi dan penguncian kode
c. Korelasi kode dengan sinyal
d. Decoding data
2.3.
Protokol HTTP
HTTP (Hyper Text Transfer Protocol) adalah protokol yang dipergunakan
untuk mentransfer dokumen dalam World Wide Web (WWW). Protokol ini adalah
protokol ringan, tidak berstatus dan generik yang dapat dipergunakan pada
berbagai macam tipe dokumen.
HTTP adalah sebuah protokol meminta/menjawab antara client dan server.
Sebuh client HTTP seperti web browser, biasanya memulai permintaan dengan
membuat hubungan TCP/IP ke port tertentu pada host yang jauh (biasanya port
80). Sebuah server HTTP yang mendengarkan di port tersebut menunggu client
mengirim kode permintaan (request), seperti "GET / HTTP/1.1" (yang akan
meminta halaman yang sudah ditentukan), diikuti dengan pesan MIME yang
memiliki beberapa informasi kode header yang menjelaskan aspek dari
24
permintaan tersebut, diikut dengan badan dari data tertentu. Beberapa kepala
(header) juga bebas ditulis atau tidak, sementara lainnya (seperti host) diperlukan
oleh protokol HTTP/1,1. Begitu menerima kode permintaan (dan pesan, bila ada),
server mengirim kembali kode jawaban, seperti "200 OK", dan sebuah pesan yang
diminta, atau sebuah pesan error atau pesan lainnya (Anonim, 2005).
2.3.1. Request Method
HTTP mendefinisikan 8 (delapan) metode yang mengindikasikan aksi yang
diinginkan untuk dijalankan pada resource yang teridentifikasi, yaitu :
a. GET – Meminta sebuah representasi dari resource yang spesifik. Sejauh
ini adalah method yang paling sering digunakan pada web sekarang ini.
b. HEAD – Meminta respon identik ke sesuatu yang menanggapi permintaan
GET, tetapi tanpa response body. Ini berguna untuk menerima metainformation yang ditulis pada header response, tanpa harus memindahkan
keseluruhan content.
c. POST – Mensubmit data (misalnya dari form HTML) ke resource yang
teridentifikasi. Data tersebut dimasukkan ke dalam body dari request.
d. PUT – Meng-upload representasi dari resource yang spesifik
e. DELETE – Menghapus resource yang spesifik (jarang diimplementasikan)
f. TRACE – Memantulkan kembali request yang diterima, sehingga client
dapat melihat apa yang sedang ditambahkan atau diubah pada request oleh
server.
25
g. OPTIONS – Mengembalikan method HTTP yang didukung oleh server.
Ini dapat digunakan untuk memeriksa fungsionalitas dari sebuah server
web.
h. CONNECT – Untuk penggunaan dengan proxy yang dapat berubah
menjadi SSL tunnel
Method GET dan HEAD didefinisikan aman, contohnya digunakan hanya
untuk penerimaan informasi. Method yang tidak aman (seperti POST, PUT, dan
DELETE) harus ditampilkan ke user dengan cara khusus (contohnya dengan
menggunakan
button
dibandingkan
link),
membuat
user
peka
dengan
kemungkinan efek samping dari aksi mereka (contohnya transaksi keuangan).
Method GET, HEAD, PUT, dan DELETE didefinisikan sebagai idempotent,
yang artinya request yang banyak dan identik mempunyai efek yang sama dengan
request tunggal. Begitu juga dengan method OPTIONS dan TRACE tidak
mempunyai efek samping. Server HTTP seharusnya dapat mengimplementasikan
minimal untuk metode GET dan HEAD, dan jika memungkinkan, juga method
OPTIONS (Anonim, 2005).
2.4.
Arsitektur Client Server
2.4.1. Pendahuluan
Istilah client/server pertama kali digunakan pada tahun 1980-an sebagai
referensi pada PC (Personal Computer) pada sebuah network. Model client/server
26
yang sebenarnya, mulai diterima dan diterapkan pada akhir tahun 80-an. Aristektur
piranti lunak client/server bersifat versatile, message-based dan infrastruktur
modular
yang
dimaksudkan
untuk
meningkatkan
kegunaan
(usability),
fleksibilitas, interoperabilitas, dan skalabilitas dibandingkan dengan sistem
tersentralisasi (centralized), mainframe, atau time sharing computing (Sadoski,
1997).
Client adalah sisi yang me-request servis dan server adalah sisi yang
menyediakan servis. Sebuah komputer bisa menjadi client maupun server,
tergantung dari konfigurasi software-nya (Sadoski, 1997).
Gambar 2.5. Model Client Server (www.eecs.utoledo.edu)
2.4.2. Keunggulan Arsitektur Client Server
Keunggulan dari arsitektur client-server dapat kita tinjau dengan melihat
asal muasal mengapa arsitektur client-server merupakan pengembangan dari
arsitektur-arsitektur software sebelumnya (Sadoski, 1997).
27
2.4.2.1. Arsitektur Mainframe
Dengan arsitektur mainframe, semua pengetahuan berada pada host
komputer pusat. User berinteraksi dengan host pusat tersebut melalui sebuah
terminal yang menangkap penekanan tombol dan mengirimkan informasi tersebut
ke host pusat.
Arsitektur mainframe tidak terhubung pada sebuah perangkat keras.
Interaksi user dapat dilakukan dengan menggunakan workstation PC atau UNIX.
Keterbatasan dari arsitektur mainframe adalah bahwa arsitektur ini tidak
mendukung GUI (Graphical User Interface) atau akses ke database yang banyak
dan secara geografis situsnya terpisah. Pada beberapa tahun terakhir, mainframe
telah menemukan kegunaan barunya yaitu sebagai server pada arsitektur client
server yang terdistribusi (Sadoski, 1997).
28
Gambar 2.6. Arsitektur Mainframe (http://srmwww.gov.bc.ca)
2.4.2.2. Arsitektur File Sharing
Jaringan komputer yang asli didasarkan pada arsitektur file sharing,
dimana server mendownload file dari lokasi yang di share ke desktop. Task yang
di-request oleh user kemudian berjalan di desktop. Arsitektur file sharing bekerja
jika penggunaan share rendah, frekuensi update rendah, dan kapasitas data yang
ditransfer rendah. Pada tahun 90-an, LAN (Local Area Network) computing
berubah karena kapasitas dari file sharing dibatasi oleh jumlah dari online user
yang meningkat, dan GUI menjadi semakin popouler. PC sekarang populer
menggunakan arsitektur client server (Sadoski, 1997).
29
Gambar 2.7. Arsitektur File Sharing
2.4.2.3. Arsitektur Client Server
Karena adanya batasan pada arsitektur file sharing, arsitektur client server
mulai muncul. Pendekatan ini memperkenalkan database server sebagai pengganti
dari file server. Dengan menggunakan DBMS (Database Management System)
relasional, query dari user dapat ditampilkan secara langsung.
Arsitektur client server menurunkan traffic jaringan dengan menyediakan
respon query dibandingkan dengan transfer file total. Ini meningkatkan multi-user
updating melalui GUI front end menuju ke database yang dishare. Pada arsitektur
client server, statement Remote Procedure Calls (RPCs) atau Standard Query
Language (SQL) biasanya digunakan untuk mengkomunikasikan antara client dan
server.
Arsitektur client server dimaksudkan untuk menyediakan arsitektur yang
bisa diukur, untuk setiap komputer atau proses dalam jaringan, baik itu adalah
sebuah client atau server. Piranti lunak pada server secara umum, berjalan pada
30
komputer yang powerful, yang ditujukan untuk penggunaan khusus untuk
menjalankan aplikasi bisnis.
Piranti lunak client di lain hal, pada umumnya berjalan pada PC atau
workstation biasa. Client mendapatkan semua atau sebagian besar dari informasi
dan mengandalkan pada aplikasi server untuk hal-hal seperti konfigurasi file, stock
quote, program aplikasi bisnis, atau untuk memindahkan task load yang intensif
dari sebuah PC kembali ke server, dengan tujuan untuk menjaga komputer client
dan user-ya agar bebas untuk menjalankan task-task yang lain (Sadoski, 1997).
Gambar 2.8. Arsitektur Client Server (www.cisco.com)
2.4.3. Properti Client Server
Properti dari sebuah server adalah (Anonim, 2006):
a. Passive (Slave)
31
b. Menunggu request (waiting)
c. Merespon client dengan melayani client dan mengirim reply ke client
untuk apa yang mereka minta
Properti dari sebuah client adalah (Anonim, 2006) :
a. Active (Master)
b. Mengirim request
c. Menunggu sampai reply datang
Server dapat mempunyai status atau tidak mempunyai status sama sekali.
Server yang tidak mempunyai status tidak menyimpan informasi apapun diantara
request yang ada. Sebagai contoh : sebuah server HTTP untuk halaman HTML
yang statik, Server yang mempunyai status dapat mengingat informasi antara
request yang ada. Ruang lingkup informasi ini adalah global atau session. Contoh :
Apache Tomcat.
Jenis lain dari arstiektur jaringan yang lain dikenal sebagai arsitektur peerto-peer karena setiap node atau instance dari program yang dijalankan adalah
keduanya bisa menjadi client dan sekaligus juga menjadi server, dan setiap
komponen mempunyai tanggung jawab yang ekuivalen. Kedua arsitektur, client
server dan peer-to-peer digunakan secara luas. Setiap arsitektur mempunyai
keunggulan dan kelemahan (Anonim, 2006).
32
2.4.4. Architecture n-Tier
Arsitektur client server mempunyai tingkatan-tingkatan. Tingkatantingkatan ini (tier) menentukan bagaimana arsitektur ini akan diterapkan dan apa
saja yang diperlukan untuk memenuhi arsitektur client server ini (Sadoski, 1997).
2.4.4.1. Two Tier Architectures
Dengan two tier arsitektur client server, system interface user biasanya
terletak di desktop environment user dan database management service biasanya
terletak pada server yang adalah sebuah komputer yang powerful untuk dapat
melayani request dari banyak client. Processing mnagement dibagi antara system
interface user dengan database management server environment. Database
Management Server menyediakan stored procedure dan trigger. Banyak sekali
vendor software yang menyediakan tools untuk menyederhanakan pengembangan
aplikasi untuk two tier client server architecture.
Two tier client server architecture adalah suatu solusi yang baik untuk
distributed computing ketika workgroup didefinisikan berisi sekitar 12 sampai 100
orang yang berinteraksi pada sebuah LAN secara bersamaan. Memang ada
sejumlah batasan. Ketika jumlah user mencapai lebih dari 100, performa akan
mulai menurun. Batasan menjadi alasan bahwa server akan mempertahankan
koneksi melalui “keep-alive“ message dengan setiap client, bahkan ketika tidak
ada pekerjaan yang sedang dilakukan.
33
Batasan kedua dari two tier architecture adalah bahwa implementasi dari
processing management service menggunakan prosedur database milik sebuah
vendor, membatasi fleksibilitas dan pilihan dari DBMS untuk aplikasi. Akhirnya,
implementasi two tier architecture menyediakan fleksibilitas yang terbatas dalam
menggerakkan fungsionalitas program dari satu server ke server lain tanpa secara
manual men-generate ulang procedural code (Sadoski, 1997).
Gambar 2.9. Arsitektur Two Tier
2.4.4.2. Three tier architectures
Three tier architecture (juga bisa disebut sebagai multi-tier architecture)
muncul untuk menanggulangi batasan-batasan yang ada pada two tier architecture.
Pada three tier architecture, sebuah middle tier ditambahkan diantara system
34
interface user dengan database management server environment. Ada berbagai
macam cara untuk mengimplementasikan middle tier ini, seperti transaction
processing monitor, message server, atau application server. Middle tier dapat
menampilkan queuing, eksekusi aplikasi, dan database staging. Sebagai contoh,
jika middle tier menyediakan queuing client dapat mengirim request-nya ke
middle layer dan melepaskan diri, karena middle tier akan mengakses data dan
mengembalikan jawabannya ke client.
Sebagai tambahan, middle layer menambah scheduling dan prioritization
untuk progress dalam kerja. Three tier client server architecture telah
menunjukkan dalam meningkatkan performa untuk grup dengan jumlah user yang
besar (dalam ribuan) dan meningkatkan fleksibilitas jika dibandingkan dengan
pendekatan pada two tier. Fleksibilitas dalam melakukan partisi dapat menjadi
sederhana, sesederhana men-drag dan drop modul application code ke komputer
yang berbeda pada beberapa three tier architecture.
Batasan dengan three tier adalah bahwa pengembangan environment dirasa
lebih sulit untuk digunakan dibandingkan dengan pengembangan yang visuallyoriented dalam aplikasi two tier. Akhir-akhir ini, banyak mainframe telah
digunakan sebagai server pada three tier architecture (Sadoski, 1997).
35
Gambar 2.10. Arsitektur Three Tier
2.4.4.3. Three Tier Architecture dengan Teknologi Transaction Processing
Monitor
Jenis yang paling dasar dari three tier architecture adalah yang mempunyai
middle layer yang terdiri dari teknologi Transaction Processing (TP) monitor.
Teknologi TP monitor adalah tipe dari message queuing, transaction scheduling,
dan prioritization service dimana client terhubung ke TP monitor (middle tier),
bukan ke database server. Transaksi diterima oleh monitor, yang meng-queue
transaksi tersebut dan kemudian mengambil tanggung jawab untuk mengelola
transaksi tersebut menuju penyelesaian, hingga membebaskan client tersebut.
Ketika kapabilitas tersebut disediakan oleh pihak ketiga vendor middleware, yang
disebut juga sebagai “TP Heavy” karena dapat melayani ribuan user. Ketika
36
ditanam dalam DBMS akan disebut sebagai “TP Lite” karena pengalaman telah
menunjukkan penurunan performa ketika lebih dari 100 client terkoneksi.
Teknologi TP monitor juga menyediakan :
a. Kemampuan untuk meng-update berbagai macam DBMS yang berbeda
dalam satu transaksi
b. Konektivitas ke berbagai macam sumber data, termasuk flat file, nonrelational DBMS, dan mainframe.
c. Kemampuan untuk menambahkan prioritas ke transaksi
d. Keamanan yang kuat
Menggunakan three tier client server architecture dengan teknologi TP
monitor menghasilkan environment yang lebih dapat diukur dibandingkan two tier
architecture dengan koneksi langsung dari client ke server. Untuk sistem dengan
ribuan user, teknologi TP monitor telah dirasakan sebagai salah satu solusi efektif.
Batasan yang ada pada teknologi TP monitor adalah bahwa implementation
code biasanya ditulis pada low level language (seperti COBOL), dan belum secara
luas tersedia pada toolset visual yang populer (Sadoski, 1997).
2.4.4.4. Three Tier dengan Message Server
Messaging adalah cara lain untuk mengimplementasikan three tier
architecture. Pesan atau message diprioritaskan dan diproses secara asynchronous.
Pesan terdiri dari header yang mengandung informasi utama, dan alamat,
serta nomor identifikasi. Message server terhubung ke DBMS relasional dan
sumber data yang lain.
37
Perbedaan antara teknologi TP monitor dengan message server adalah
bahwa arsitektur message server memfokuskan diri pada intelligent message,
dimana pada TP monitor environment, intelligence ada pada monitor, dan
memperlakukan transaksi sebagai dumb data packet. Sistem messaging adalah
solusi baik untuk infrastruktur wireless (Sadoski, 1997).
2.4.4.5. Three Tier dengan Application Server
Three tier application server architecture mengalokasi bagian utama dari
sebuah aplikasi yang berjalan pada shared host, bukan pada system interface user
client environment. Application server tidak mengendalikan GUI, tetapi men-share
business logic, computation, dan engine untuk data retrieval.
Keuntungannya adalah bahwa dengan lebih sedikit piranti lunak yang
berada pada client, resiko keamanan yang harus dikhawatirkan juga lebih rendah,
aplikasi lebih mudah diukur, dan dukungan serta biaya instalasi lebih rendah pada
satu server dibandingkan memelihara pada tiap client desktop. Rancangan
application server sebaiknya digunakan ketika keamanan, skalabilitas, dan biaya
adalah pertimbangan utama (Sadoski, 1997).
2.5.
Java 2 Micro Edition (J2ME)
2.5.1. Teknologi Java
Java adalah teknologi dan bahasa pemrograman yang berjalan pada
multiplatform sesuai dengan semboyannya yaitu “Write Once, Run Anywhere”
38
(Mic, 2003, p1). Pada site official Java dari Sun (http://java.sun.com) bisa ditemui
tiga pembagian paket Java yaitu:
a. Java 2 Enterprise Edition (J2EE)
b. Java 2 Standard Editon (J2SE)
c. Java 2 Micro Edition (J2ME)
Penjelasan paling sederhana atas pembagian tersebut adalah berdasarkan
atas perangkat keras yang digunakan (Steiner, 2000, p2):
a.
Paket J2EE digunakan pada perusahaan besar untuk melayani permintaan
pelanggan, karyawan, supplier, dengan solusi internet business server,
memerlukan perangkat keras yang mempunyai spesifikasi dan memori
yang besar seperti pada komputer server
b.
Paket J2SE digunakan untuk pembuatan aplikasi desktop atau aplikasi
intenet (applet), memerlukan perangkat keras seperti komputer desktop
c.
Paket J2ME digunakan untuk pembuatan aplikasi pada perangkat yang
memiliki memori kecil seperti ponsel, pager atau PDA
39
Gambar 2.11. Pembagian paket pada Java 2 (Steiner, 2000, p3)
2.5.2. Pengenalan J2ME
Java Micro Edition atau yang biasa disebut J2ME adalah sebuah koleksi
Java API dan runtime untuk pengembangan software untuk perangkat mini
(micro) seperti PDA, telepon genggam, dan lain-lain. Java Micro Edition
dirancang oleh Sun Microsystem yang merupakan pengganti teknologi
sebelumnya yaitu PersonalJava.
Java ME banyak digunakan dalam pembuatan software pada perangkat
mobile seperti permainan (game), dimana programnya dapat diemulasikan pada
komputer
untuk
pengembangannya
An_Introduction_to_J2ME).
(http://en.wikipedia.org/wiki/
40
2.5.3. Midlet : Aplikasi J2ME
Aplikasi yang berjalan pada paket J2ME diberi nama Midlet (Mic, 2003,
p1). Untuk menjalankan Midlet tentunya diperlukan perangkat keras yang
mendukung Java artinya perangkat tersebut harus memiliki Java Virtual Machine
untuk menjalankan Midlet. Sekarang tidak sulit lagi untuk menemukan perangkat
yang bisa menjalankan Midlet terutama untuk jenis telepon seluler. Hampir setiap
telepon seluler keluaran terbaru telah menyertakan dukungan akan teknologi Java
(Mic, 2003, p1).
2.5.4. Emulator Ponsel Java
Untuk menjalankan Midlet, programmer tidak perlu memiliki dan
mencobanya pada telepon seluler. Cukup dengan emulator dari telepon seluler
yang dapat dijalankan pada PC (Mic, 2003, p2).
41
Gambar 2.12. Emulator Telepon Seluler J2ME WTK
(http://java.sun.com/j2me)
2.5.5. Konfigurasi J2ME
Platform.J2ME menjangkau serangkaian jenis perangkat yang berbeda.
Perangkat seperti Internet TV mempunyai user interface yang besar dan kapasitas
memori yang berbeda antara 2 sampai 16 megabyte (Steiner, 2000, p4). Sedangkan
pada perangkat lain, seperti telepon seluler, pager, dan lain-lain, mempunyai user
interface yang rendah dan kapasitas memori yang kecil. Karena banyaknya jenis
42
perangkat yang berbeda dan mempunyai spesifikasi yang berbeda, maka Sun
memisahkan konfigurasi J2ME menjadi 2, yaitu (Steiner, 2000, p5):
1. CLDC (Connected Limited Device Configuration)
Spesifikasinya:
a. User interface yang sangat sederhana (termasuk untuk yang tidak
menggunakan user interface sama sekali)
b. Kapasitas memori yang rendah (160 kB sampai 512 kB)
c. Komunikasi nirkabel, memungkinkan bandwidth yang kecil
d. Tenaga listrik yang terbatas, seringkali menggunakan batrei
e. Contohnya adalah: telepon seluler, PDA, dan pager
2. CDC (Connected Device Configuration)
Spesifikasinya:
a. User interface yang lebih rumit
b. Kapasitas memori dengan jangkauan antara 2 sampai 16 megabyte
c. Prosesor 16 atau 32 bit
d. Konektivitas untuk beberapa jaringan yang berbeda
e. Contohnya: internet TV, dan komunikator high-end
43
Gambar 2.13. Kerangka J2ME (http://www.blueboard.com/j2me/intro.htm)
2.5.6. Mobile Information Device Profile (MIDP)
MIDP adalah profil yang ada pada CLDC, dimana profil ini menyediakan
platform dasar untuk perangkat yang kecil, memiliki resource yang terbatas,
wireless connected, seperti telepon seluler dan pager (Steiner, 2000, p6).
2.6.
Pemrograman Socket
2.6.1. Definisi Socket
Socket adalah kombinasi antara alamat IP dan port (Veeramani, 2005).
Socket juga dapat dikatakan sebagai bentuk komunikasi antar proses yang
digunakan untuk membentuk koneksi dari komunikasi dua arah antar 2 aplikasi,
biasanya melalui jaringan komputer, tetapi terkadang pada komputer yang sama.
Ada 2 jenis socket yaitu internet socket dan local socket.
Internet socket adalah socket yang mengikat port yang diberikan, kemudian
menyerahkannya pada transport layer untuk mengidentifikasi aplikasi mana
sebagai tujuan pengiriman data. Sedangkan local socket adalah socket yang
44
digunakan untuk komunikasi antar proses pada host yang sama, bukan pada host
yang berbeda (http://en.wikipedia.org/wiki/Socket).
2.6.2. Java Networking
Java menggunakan banyak mekanisme berbasis stream ke keseluruhan
bahasa untuk menerima I/O. Sebagai contoh, semua file I/O dan memori I/O pada
Java diterima dengan stream. Kebanyakan pengiriman data juga dibawa dengan
menggunakan stream, walaupun implementasi datagram juga mendukung. Kelaskelas pada Java disediakan untuk internetworking antara client dan server
(Golding, 1997).
2.7.
Load Balancing
Dalam komputasi, load balancing adalah sebuah teknik yang digunakan
untuk membagi proses-proses antar prosesor, komputer, disk, atau resource lain
(Anonim, 2006). Server harus mendukung banyak aplikasi dan service yang
berjalan 24 jam sehari dan 7 hari seminggu. Oleh karena itu, aplikasi jaringan dan
server harus mempunyai kemampuan untuk meng-handle sejumlah besar request
client tanpa menimbulkan delay. Salah satu cara load balancing adalah dengan
metode clustering (Anonim, 2006).
Clustering memungkinkan untuk mengelola sekumpulan server-server
independent sebagai sebuah sistem dengan skala yang lebih besar, ketersediaan
yang meningkat, dan kemudahan dalam pengelolaan (Anonim, 2006).
45
Gambar 2.14. Load balancing dengan clustering (www.microsoft.com)
2.8.
Diagram Alir (Flowchart)
Diagram alir (flowchart) adalah representasi grafis dari serangkaian
aktivitas operasi, pergerakan, inspeksi, delay, keputusan dan penyimpanan dari
sebuah proses. Diagram alir menggunakan simbol-simbol untuk merepresentasikan
jenis operasi atau proses yang sedang berjalan. Bentuk yang sudah distandarisasi
menyediakan metode yang umum dipakai oleh banyak orang untuk memvisualisasikan masalah dengan cara yang sama dan lebih mudah (Hansen, 2005).
Simbol-simbol yang digunakan dalam diagram alir adalah sebagai berikut:
1. Proses, dibagi menjadi 2 macam:
a.
Berupa proses / pengolahan
b.
Predefined process
46
2.
Operasi input/output
3.
Decision, berupa pertanyaan atau penentuan
suatu keputusan
4.
Terminal, untuk menandai awal dan akhir
program
5.
Preparation, untuk inisialisasi suatu nilai.
6.
Panah, sebagai penghubung antar komponen
dan penunjuk arah
7.
Manual input, sebagai input dari pengguna
8. Penghubung:
a.
On page connector, sebagai penghubung
dalam 1 halaman
b.
Off page connector, sebagai penghubung
antar halaman yang berbeda
47
2.9.
Diagram Kelas (Class Diagram)
Tujuan dari diagram kelas adalah untuk menggambarkan kelas-kelas dalam
sebuah model. Dalam aplikasi object oriented, sebuah kelas mempunyai atribut
(variable), operasi (fungsi), dan relasi (hubungan) dengan kelas-kelas yang lain
(Martin, 1997, pp1-2).
Gambar 2.15. Sebuah komponen kelas
Antar kelas yang satu dengan yang lain memiliki relasi satu sama lain.
Berikut adalah simbol-simbol relasi dalam diagram kelas (Martin, 1997, pp3 – 7):
1.
Asosiasi, menyatakan hubungan asosiasi antar 2
kelas
2.
Agregasi, menyatakan bahwa suatu kelas adalah
bagian (part of) dari kelas lain
Inheritance, menyatakan bahwa suatu kelas
3.
merupakan turunan dari kelas yang lain
4.
Interface, menyatakan bahwa suatu kelas
mengimplementasikan suatu interface
(Anonim, 2002)
Download