i
MELALUI PERANGKAT PONSEL BERBASIS GPRS DENGAN MENGGUNAKAN JAVA MOBILE TO PC
(STUDI KASUS SMK BHIPURI SERPONG TANGERANG)
IHSAN SYAHPUTRA 206091004056
PRODI TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH
JAKARTA
2011 M/ 1433 H
ii
(STUDI KASUS SMK BHIPURI SERPONG)
Skripsi
Sebagai Salah Satu Syarat Untuk Memperoleh Gelar Sarjana Komputer Fakultas Sains dan Teknologi
Universitas Islam Negeri Syarif Hidayatullah Jakarta
Oleh:
IHSAN SYAHPUTRA 206091004056
PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH JAKARTA
2012 M / 1433 H
v
BENAR HASIL KARYA SENDIRI YANG BELUM PERNAH DIAJUKAN SEBAGAI SKRIPSI ATAU KARYA ILMIAH PADA PERGURUAN TINGGI ATAU LEMBAGA MANAPUN
Jakarta, Januari 2012
IHSAN SYAHPUTRA
206091004056
vi
PC Melalui Perangkat Ponsel Berbasis GPRS Dengan Menggunakan Java Mobile to PC, Dibimbing oleh Herlino Nanang dan Victor Amrizal.
Aplikasi remote desktop biasanya digunakan untuk mengendalikan suatu komputer melalui komputer lain. Namun, seiring dengan perkembangan teknologi mobile sekarang ini sudah memungkinkan untuk mengembangkan aplikasi remote desktop pada handphone berbasis java dengan menggunakan teknologi J2ME.
Namun timbul permasalahan bagaimana mengendalikan komputer server secara full control, mengakses system data-nya, dll. Sehingga diharapkan mampu untuk meningkatkan produktifitas pekerjaan, menghemat biaya, waktu dan tempat dalam mengontrol server pada jaringan yang berada diluar jangkauan. JM2PC( Java Mobile to Personal Computer) merupakan salah satu software remote desktop mobile yang open source dan berbasis java. JM2PC terdiri dari server dan client dimana pada sisi server di install pada komputer yang akan di-remote, sedangkan sisi client di install pada handphone yang mendukung java MIDP (Mobile Information Device Profile) dan sistem operasi pada server menggunakan linux Ubuntu. Dalam melakukan koneksi antara client dengan server menggunakan protokol Remote Frame Buffer (RFB) dan agar bisa saling terhubung maka diperlukan sebuah IP public yang akan di akses oleh client dengan menggunakan koneksi GPRS (General Packet Radio Service). Metodologi penelitian yang digunakan adalah Network Development Life Cycle (NDLC). Dengan adanya remote desktop mobile di sekolahan ataupun instansi lain diharapkan dapat memberikan kemudahan kepada admin jaringan maupun yang lainnya dalam mengendalikan komputer dari jarak jauh.
Kata kunci : Remote desktop, JM2PC, Java, MIDP, GPRS.
vii
Limpahan nikmat dan berkah telah menggetarkan hati dan menggerakkan kita untuk senantiasa bersyukur kehadirat Allah SWT Yang Maha Kuasa dan Maha Agung, bersyukur dengan melafalkan puji – pujian yang agung yang tiada habis terangkai untuk-Nya. Shalawat dan salam senantiasa tercurah kepada junjungan kita yang telah banyak memberi pelajaran tentang hidup yaitu Nabi Muhammad SAW beserta keluarganya, para sahabatnya, dan pengikutnya. Amin.
Atas karuniaNya pula penulis dapat menyelesaikan skripsi ini sebagai syarat kelulusan dalam menempuh pendidikan Strata 1 (S1) di Universitas Islam Negeri Jakarta. Penulis berharap semoga skripsi ini dapat memberikan inspirasi bagi penulis dan pembaca dalam mengembangkan teknologi informasi untuk lebih maju.
Pada kesempatan ini, penulis ingin mengucapkan terima kasih kepada semua pihak yang telah membantu dalam menyelesaikan skripsi ini:
1. Bapak Dr. Syopiansyah Jaya Putra M.Sis selaku Dekan Fakultas Sains da Teknologi.
2. Bapak Herlino Nanang, M.T, CCNA dan Bapak Viktor Amrizal, S.Kom yang
telah meluangkan waktunya untuk mendukung dan membimbing penulis
dalam menyelesaikan skripsi ini.
viii
perkuliahan.
4. Bapak dan Ibu penguji yang memberikan kritik dan saran pada skripsi ini.
5. Ayah tercinta Rully Armansyah dan Ibu tersayang Aty Hartati yang selalu memberi dukungan doa, moril, materiil dan semangat sehingga mempelancar proses penyusunan skripsi ini.
6. Rekan – rekan mahasiswa/i seperjuangan angkatan tahun 2006 yang selalu memberi semangat kepada penulis.
Penulis menyadari masih terdapat banyak kekurangan dalam penelitian ini, baik penulisan maupun aplikasinya. Oleh karena itu, penulis mengharapkan kritik dan saran yang dapat membangun skripsi ini menjadi lebih baik.
Jakarta, Januari 2012
Penulis
ix
LEMBAR JUDUL... ii
LEMBAR PERSETUJUAN PEMBIMBING... iii
LEMBAR PENGESAHAN UJIAN ... iv
LEMBAR PERNYATAAN ... v
ABSTRAK ... vi
KATA PENGANTAR... vii
DAFTAR ISI... ix
DAFTAR TABEL ... xiii
DAFTAR GAMBAR... xiv
BAB I. PENDAHULUAN... 1
1.1. Latar Belakang... 1
1.2. Rumusan Masalah ... 3
1.3. Batasan Masalah ... 3
1.4. Tujuan Dan Manfaat... 4
1.5. Metodologi Penelitian ... 5
1.6. Sistematika Penulisan... 6
BAB II. LANDASAN TEORI ... 8
2.1 Pengertian Analisis dan Implementasi ... 8
2.2 Jaringan Komputer ... 8
2.3 Remote PC... 11
2.3.1 Remote Desktop ... 14
2.3.2 Syarat Remote Desktop... 14
x
2.4.1 Sejarah Virtual... 23
2.4.2 Konsep Virtualisasi ... 23
2.4.3 Perbedaan Sistem Tradisional dengan Sistem Virtual... 25
2.4.4 Virtual Desktop... 26
2.5 Teknologi Mobile ... 27
2.5.1 GPRS(General Packet Radio System)... 27
2.6 Java... 32
2.6.1 Pengertian J2ME(Java2 Micro Edition) ... 34
2.6.2 Connected Limited Device Configuration(CLDC)... 37
2.6.3 Connected device configuration(CDC) ... 37
2.6.4 Mobile Information Device Profile(MIDP)... 38
2.6.5 Kilobyte Virtual Machine(KVM) ... 40
2.6.6 C-Virtual Machine... 41
2.6.7 MIDlet ... 41
2.6.8 JAD(Java Application Descriptor)... 43
2.6.9 OTA(Over The Air) ... 43
2.6.10J2ME Wireless toolkit... 44
2.7 Metode NDLC (Network Development Life Cycle)... 44
2.8 Studi Sejenis... 46
BAB III. METODOLOGI PENELITIAN ... 55
3.1 Metode Pengumpulan Data... 55
3.1.1 Metode Wawancara... 55
3.1.2 Studi Pustaka... 55
xi
3.2.2 Design ... 60
3.2.3 Simulation Prototype... 61
3.2.4 Implementation... 61
3.2.5 Monitoring ... 62
3.2.6 Management... 62
3.3 Mekanisme Kerja Penelitian ... 62
BAB IV. IMPLEMENTASI ... 64
4.1 Analysis ... 64
4.1.1 Identifikasi ... 64
4.1.2 Understand ... 65
4.1.3 Analyze ... 66
4.1.4 Report ... 66
4.2 Design ... 69
4.2.1 Perancangan Topologi Jaringan ... 69
4.2.2 Use Case Diagram... 70
4.2.3 Use Case scenario... 74
4.2.4 Sequence Diagram... 78
4.3 Simulation Prototype... 96
4.4 Implementasi ... 105
4.4.1 Implementasi Topologi Jaringan ... 105
4.4.2 Implementasi dan Pengujian Layanan Pendukung... 106
4.4.3 Implementasi dan Pengujian Remote Desktop... 112
4.4.4 Pengujian Blackbox ... 118
xii
4.6 Manajemen... 121
BAB V. PENUTUP... 122
5.1 Kesimpulan... ..122
5.2 Saran ... ..123 DAFTAR PUSTAKA...
LAMPIRAN
xiii
Tabel 2.1 Perbandingan CLDC dan CDC... 38
Tabel 2.2 Perbandingan MIDP 1.0 dan MIDP 2.0... 39
Tabel 4.1 Spesifikasi Kebutuhan Software ... 66
Tabel 4.2 Spesifikasi Kebutuhan Hardware... 67
Tabel 4.3 Daftar IP Address... 69
Tabel 4.4 Use case scenario koneksi... 75
Tabel 4.5 Use case scenario run atau console ... 75
Tabel 4.6 Use case scenario message... 75
Tabel 4.7 Use case scenario File System ... 76
Tabel 4.8 Use case scenario remote mouse... 76
Tabel 4.9 Use case scenario remote keyboard server ... 77
Tabel 4.10 Use case scenario Remote desktop server... 77
Tabel 4.11 Use case scenario tutup koneksi... 78
Table 4.12 Analisis trafik server ... 120
Table 4.13 Analisis Pengukuran Waktu... 121
xiv
Gambar 2.2 Struktur Sistem Virtual... 26
Gambar 2.3 Ruang lingkup keterhubungan J2EE, J2SE, dan J2ME. ... 34
Gambar 2.4 Lingkup configuration... 36
Gambar 2.5 Hubungan J2ME dan J2SE... 36
Gambar 2.6 Arsitektur J2ME ... 37
Gambar 2.7 MIDP User Interface ... 40
Gambar 2.8 Alur Hidup MIDlet... 42
Gambar 3.1 Fase fase NDLC ... 59
Gambar 3.2 Mekanisme Kerja Penelitian ... 63
Gambar 4.1 Tipe jaringan yang digunakan... 69
Gambar 4.2 Use case Diagram untuk aplikasi Remote desktop mobile ... 70
Gambar 4.3 Use case Koneksi ... 71
Gambar 4.4 Use Case Run atau Console ... 71
Gambar 4.5 Use case Cek data server... 72
Gambar 4.6 Use case kirim message ... 72
Gambar 4.7 Use case Remote mouse server ... 73
Gambar 4.8 Use case Remote Keyboard Server ... 73
Gambar 4.9 Use case Remote desktop mobile... 73
Gambar 4.10 Use case tutup koneksi ... 74
Gambar 4.11 Sequence Diagram untuk koneksi... 79
xv
Gambar 4.15 Sequence Diagram untuk remote mouse server ... 88
Gambar 4.16 Sequence Diagram untuk remote keyboard server... 90
Gambar 4.17 Sequence Diagram untuk Remote desktop server... 92
Gambar 4.18 Sequence Diagram untuk tutup koneksi... 94
Gambar 4.19 Tampilan perintah di terminal linux... 97
Gambar 4.20 Tampilan Interface Server... 98
Gambar 4.21 Interface server melakukan proses waiting ... 99
Gambar 4.22 Tampilan awal client ... 100
Gambar 4.23 Tampilan logo client... 101
Gambar 4.24 Tampilan tipe koneksi ... 102
Gambar 4.25 Tampilan konfigurasi form pada server ... 103
Gambar 4.26 Tampilan proses koneksi... 104
Gambar 4.27 Tampilan menu pada client ... 104
Gambar 4.28 Perintah untuk menampilkan isi buffer kernel ... 107
Gambar 4.29 Perintah untuk menjadikan modem terdeksi ... 108
Gambar 4.30 Tampilan hasil scanning port pada modem... 109
Gambar 4.31 Perintah untuk mengedit wvdial... 110
Gambar 4.32 Tampilan hasil perintah uji koneksi modem ... 110
Gambar 4.33 Tampilan uji coba server... 112
Gambar 4.34 Tampilan menu pada client ... 113
xvi
Gambar 4.38 Tampilan Input Message ... 116
Gambar 4.39 Tampilan Remote Mouse ... 117
Gambar 4.40 Tampilan menu Keyboard... 117
Gambar 4.41 Tampilan Screen pada server ... 118
Gambar 4.42 Grafik analisa trafik server... 121
Gambar 4.43 Grafik analisa pengukuran waktu... 122
1
Kemajuan teknologi jaringan internet tanpa kabel yang begitu cepat saat ini, terutama teknologi mobile communication sepertinya tidak dapat terelakkan lagi. Selain itu teknologi ini sudah menyentuh hampir semua kalangan di Indonesia dan dapat diperoleh dengan mudah. Apalagi dengan dikeluarkannya Java 2 Micro Edition (J2ME) oleh Sun Microsystem, membuat semakin banyak aplikasi mobile yang berkembang saat ini. Java merupakan bahasa pemprograman yang berorientasi objek, berbasis open source dan dapat dijalankan pada berbagai jenis platform sistem operasi sehingga perkembangan java tidak hanya terfokus pada satu jenis platform saja.
Selama ini jika admin dalam mengakses komputer server ataupun melakukan shutdown, restart dan aktifitas lainnya maka admin tersebut harus selalu berada di depan komputer tersebut. Namun bila keadaan tidak memungkinkan untuk seorang admin dalam mengakses komputernya ketika berada jauh di tempat lain maka admin tersebut tidak dapat mengakses komputer dan mengetahui kondisi dari servernya. Jadi terbatasnya ruang gerak admin dalam mengakses komputer servernya.
Oleh karena itu, hal inilah yang mendasari diperlukannya suatu
aplikasi yang dapat memberikan kemudahan ruang gerak terhadap admin
dalam mengendalikan komputer dari jarak jauh dengan memanfaatkan aplikasi
berbasis java dengan menggunakan teknologi GPRS. JM2PC (Java mobile to PC) merupakan salah satu aplikasi berbasis java yang mampu memberikan akses remote desktop secara full control dan memiliki SSL yang berfungsi untuk membuat koneksi ter-encrypt jadi data yang dikirim ke server akan di- encrypt sebelum masuk ke jaringan sehingga user dalam melakukan remote terhadap server, baik itu mengakses file, mengendalikan pointer mouse, mengendalikan keyboard, ataupun melihat tampilan desktop pada server melalui ponsel dapat dilakukan dengan aman. Kelebihan lain dari aplikasi ini adalah adanya sistem plug-in yang dapat ditambahkan.
Melalui proyek akhir ini dibangun suatu aplikasi yang dapat melakukan pengendalian jarak jauh terhadap sebuah komputer dengan memanfaatkan teknologi GPRS. Dengan dukungan layanan GPRS dan aplikasi J2ME, diharapkan mampu membantu seorang admin dalam mengakses komputernya yang berada jauh darinya, sehingga dapat meningkatkan efektivitas kinerja seorang admin.
Maka disini penulis mencoba untuk merancang suatu sistem serta
menuangkannya dalam bentuk tugas akhir dengan judul Analisis dan
Implementasi Remote Desktop PC Melalui Perangkat Ponsel Berbasis
GPRS dengan Menggunakan Java Mobile to PC.
1.2. Rumusan Masalah
Rumusan masalah dalam penelitian ini adalah sebagai berikut : 1. Belum tersedianya akses jaringan secara mobile dalam melakukan
pengendalian jarak jauh terhadap server.
2. Masih terbatasnya user atau admin dalam mengakses komputer servernya yang berada di luar jangkauan jaringannya, ketika ingin melakukan remote terhadap servernya.
3. Diperlukannya suatu aplikasi yang mampu memberikan kemudahan dalam mengefisienkan waktu dan tempat terhadap user atau admin dalam melakukan remote secara mobile dengan menggunakan handphone.
1.3. Batasan Masalah
Dalam pembahasan selanjutnya, penulis membatasi tulisan ini yaitu antara lain:
1. Sistem operasi yang ada pada server adalah Linux Ubuntu.
2. Kontrol jarak jauh menggunakan handphone melalui jaringan GSM.
3. Komunikasi antara handphone dan komputer server menggunakan GPRS.
4. lmplementasi aplikasi di sisi client menggunakan J2ME-MIDP, dengan menggunakan Sun J2ME Wireless Toolkit, sehingga diharapkan berjalan pada semua merek ponsel yang mendukung teknologi J2ME.
5. Metodologi yang digunakan pada penelitian ini adalah NDLC (Network Development Life Cycle)
6. Aplikasi ini mengakses satu komputer dengan kondisi komputer tersebut
masih menyala.
1.4. Tujuan Penelitian
Tujuan yang ingin dicapai oleh penulis dari penelitian ini adalah dengan aplikasi ini diharapkan client dapat memonitor dan mengontrol keadaan komputer server yang akan ditampilkan pada aplikasi client.
1.5. Manfaat Penelitian
Manfaat dari disusunanya tulisan ini adalah : 1. Bagi Penulis
a. Mengetahui lebih mendalam tentang remote komputer dengan menggunakan perangkat mobile.
b. Menambah pengalaman, memperluas wawasan dalam mengembangkan potensi diri.
2. Bagi Universitas
a. Dapat menjadi sumbangan karya ilmiah dalam disiplin ilmu teknologi informasi
b. Dapat dijadikan sebagai bahan bacaan atau referensi bagi peneliti lain yang berminat untuk mengkaji serta mengembangkan
3. Bagi Instansi
a. Sebagai bahan rujukan bagi instansi pemerintah maupun swasta
dalam mengatasi masalah waktu, biaya dan jarak untuk selalu
terhubung pada server komputer dengan menggunakan perangkat
mobile seperti handphone.
b. Memberikan kemudahan pada Administrator jaringan dalam melaksanakan tugas dan fungsinya dalam menangani manajemen jaringan.
c. Sebagai upaya ikut membantu menyiapkan tenaga terampil bagi mahasiswa yang akan terjun ke dunia kerja.
d. Menjalin kerja sama dan saling mengenal antara Instansi kerja dan pendidikan, sehingga bisa dijadikan referensi untuk menyiapkan tenaga kerja yang lebih maju dan kompetetif.
1.6. Metodologi Penelitian 1.6.1 Pengumpulan Data
Dalam melakukan pengumpulan data, penulis menggunakan dua metode, yaitu :
1. Wawancara
Metode wawancara dilakukan dengan cara bertanya langsung kepada pihak yang terkait dalam hal ini adalah admin dan metode ini dilakukan untuk mengumpulkan data data yang dibutuhkan dalam pengembangan aplikasi.
2. Studi Pustaka
Studi pustaka dilakukan dengan cara membaca berbagai sumber
baik itu berupa buku jurnal, whitepaper, buku manual, majalah
komputer yang relevan, maupun situs – situs internet.
3. Studi Sejenis
Studi sejenis dilakukan dengan membandingkan penelitian sebelumnya dengan penelitian yang sekarang dilakukan.
1.6.2 Pengembangan Sistem
Metode pengembangan sistem yang digunakan dalam penulisan skripsi ini adalah dengan menggunakan model pengembangan sistem NDLC (Network Design Life Cycle). Model NDLC menggambarkan enam tahapan proses dalam melakukan pengembangan sistem, yaitu diantaranya: Analysis, Design, Simulation prototype, Implementation, Monitoring, Management.
1.7. Sistematika Penulisan
Penyusunan skripsi ini penulis bagi dalam beberapa bab yang secara singkat dapat dijelaskan sebagai berikut:
BAB I PENDAHULUAN
Dalam Bab ini penulis akan menjelaskan tentang latar belakang penelitian, perumusan masalah, pembatasan masalah, tujuan dan manfaat, metodologi dan sistematika penulisan.
BAB II LANDASAN TEORI
Dalam Bab ini berisi pembahasan teori-teori yang digunakan
sebagai panduan dasar dalam pengembangan sistem ini.
BAB III METODOLOGI PENELITIAN
Dalam bab ini berisi metodologi penelitian yang digunakan serta langkah langkah yang digunakan terkait dengan penelitian yang dilakukan.
BAB IV PEMBAHASAN
Dalam bab ini menjelaskan tentang pembahasan sistem yang berisikan konsep, alur, dan pola pikir program dalam bentuk flowchart, bagaimana sistem Remote Desktop ini nantinya akan berjalan, dan tahap-tahap yang diperlukan dalam menjalankan sistem ini dengan disertai dengan metode atau teknik yang digunakan dalam melaksanakan penelitian serta menyelesaikan masalah yang dimulai dari perancangan sampai kepada terselesaikannya masalah.
BAB V KESIMPULAN DAN SARAN
Dalam bab terakhir ini merupakan kesimpulan dari semua pembahasan dari bab - bab sebelumnya serta saran saran yang dibutuhkan dari penyempurnaan dan pengembangan Remote Desktop lebih lanjut.
DAFTAR PUSTAKA
8
2.1 Pengertian Analisis dan Implementasi
Definisi analisis menurut kamus besar bahasa indonesia secara harfiah berarti proses pencarian jalan keluar yang berangkat dari dugaan akan kebenarannya; penyelidikan terhadap suatu peristiwa untuk mengetahui keadaan yang sebenarnya; penguraian suatu pokok atas berbagai bagiannya dan penelaahan bagian itu sendiri serta hubungan antar bagian untuk mendapatkan pengertian yang tepat dan pemahaman makna keseluruhan.
Implementasi merupakan pelaksanaan dan penerapan dimana pelaksanaan berarti proses, cara, atau pembuatan pelaksaaan; sedangkan penerapan berarti pemasangan, pengenaan, perihal mempraktekkan (Usman : 2002).
2.2 Jaringan Komputer
Jaringan komputer adalah himpunan “Interkoneksi” antara dua komputer autonomous atau lebih yang terhubung dengan media transmisi kabel atau tanpa kabel. (Syafrizal : 2005)
Dalam jaringan komputer terdapat beberapa istilah yang perlu
diketahui, diantaranya:
1.
Server
Server adalah proses menjawab permintaan, umumnya server menangani banyak permintaan dari client secara serempak.
Setiap koneksi dari server ke client dipisahkan oleh socket. Jika diilustrasikan dengan telepon umum maka server adalah seorang atau mesin yang menjawab telepon berdering
2.
Client
Client adalah proses yang memulai suatu koneksi untuk melakukan hubungan komunikasi dengan server. Secara umum client mengadakan koneksi dengan satu server dalam waktu yang sama. Jika sebuah proses memerlukan hubungan dengan banyak server, maka secara otomatis akan menciptakan banyak client. Jika diilustrasikan dengan sistem telepon maka client merupakan seorang yang menghubungi lewat telepon.
3.
IP Address
Setiap komputer memiliki alamat IP yang digunakan untuk berkomunikasi dengan komputer lainnya dalam suatu jaringan.
Alamat IP yang digunakan umumnya menggunakan IP versi 4 dengan jumlah 32 bit.
4.
Port Number
Port merupakan nomor dengan tipe integer yang digunakan
sebagai identifikasi atau layanan dari client yang ingin melakukan
komunikasi. Dalam protokol TCP/IP nomor port adalah berupa bilangan integer dari 0 sampai 65.535.
Nomor port dibagi menjadi 3 berdasarkan aturan yang ditetapkan oleh IANA, diantaranya:
a. Well-knows ports
Berkisar antara 0 – 1023. Port number yang termasuk ke dalam well – knows port selalu mempresentasikan layanan jaringan yang sama. Well – knows port didefinisikan dalam RFC 1060.
b. Registered Port
Port – port yang digunakan oleh vendor vendor komputer atau jaringan yang berbeda untuk mendukung aplikasi dan sistem operasi yang mereka buat. Registered port juga diketahui dan didaftarkan oleh IANA tapi tidak dialokasikan secara permanen, sehingga vendor lainnya dapat menggunakan port number yang sama. Range registered port berkisar dari 10244 – 49151 dan beberapa port diantaranya adalah Dynamically Assigned Port.
c. Dynamically Assigned Port
Merupakan port – port yang ditetapkan oleh sistem
operasi atau aplikasi yang digunakan untuk melayani request
dari pengguna sesuai kebutuhan. Dynamically Assigned Port
berkisar dari 1024 – 65536 dan dapat digunakan dan dilepas.
(Andrew : 2011)
2.3 Remote PC
Proses Remote PC sudah dikenal banyak orang, salah satunya lewat produk Microsoft Windows XP. Dalam Windows XP, kita akan mendapatkan berbagai kemudahan untuk melakukan pengaturan komputer agar dapat dikendalikan dari jarak jauh. Remote PC hadir berkat dua fitur baru yang dihadirkan oleh Microsoft untuk menjawab perkembangan internet dan kebutuhan mobile dari para eksekutif muda. Seiring dengan hadirnya fitur canggih dari windows XP tersebut, banyak vendor software yang ikut berlomba lomba menciptakan berbagai cara dan teknik untuk melakukan Remote PC. Dengan adanya perkembangan teknik Remote PC tentu saja manusia diharapkan bisa lebih produktif tanpa harus terikat tempat.
Di bawah ini adalah teknik teknik Remote PC dengan menggunakan peralatan maupun software yang dapat dengan mudah kita temukan, diantaranya:
1. Mengendalikan PC menggunakan bantuan sistem operasi dari komputer.
Seperti misalnya pada windows setelah generasi Windows XP umumnya
memiliki kemampuan untuk melakukan Remote PC. Remote PC pada
windows ada dua jenis, yaitu :
a. Remote desktop menjadi salah satu fitur penting yang ada dalam sistem operasi generasi windows. Fungsi utama dari fitur ini adalah memperbolehkan pengguna untuk terhubung dengan sebuah mesin yang berada ditempat yang jauh dan si pengguna tadi seolah olah berada didengan mesin tersebut dengan mempergunakan protocol Remote Desktop Protocol (RDP) yang secara default berjalan di TCP port 3389.
b. Remote Assistance merupakan salah satu fitur penting yang dibuat oleh Microsoft dan diletakkan pada berbagai sistem operasi Windows. Tujuan dari Remote Assistance adalah untuk membantu pada pengguna komputer lain yang terhubung dengan komputer pengguna.
2. Remote PC dengan bantuan software khusus. Software komputer kini telah berkembang dengan pesat seiring dengan perkembangan sistem operasi yang berbasis windows. Berikut ini beberapa software yang dapat digunakan untuk membantu mengendalikan PC dari jarak jauh, diantaranya : team Viewer,LogMeIn, TightVNC, UltraVNC, dll.
3. Menggunakan BotNet. BotNet adalah sebuah program komputer jahat
yang bertujuan mengambil berbagai berbagai data dan informasi dari
pengguna komputer yang telah terinfeksi. Pada dasarnya BotNet
termasuk semacam Trojan. Teknik pengendalian ini biasanya
dilakukan oleh hacker yang sudah berada pada tingkat tinggi.
4. Remote PC menggunakan infrared. Infrared kini telah berkembang sangat pesat baik teknologi yang dipakainya maupun berbagai peralatan elektronik yang mampu didukung oleh infrared ini.
Kelebihan Remote PC menggunakan infrared adalah lebih aman karena pada dasarnya jangkauan wilayah infrared sangat dekat sehingga kemungkinan PC untuk dikendalikan orang lain sangat kecil dan sistem pairing tidak membutuhkan pengaturan yang rumit seperti yang dimiliki oleh Remote Bluetooth. Kelemahan dari Remote model ini adalah terletak pada jangkauan sinyal yang sangat dekat dan tidak bisa tembus tembok.
5. Remote PC menggunakan Bluetooth. Bluetooth merupakan salah satu
teknologi terobosan terbaru yang dikembangkan untuk melengkapi
berbagai kekurangan yang dimiliki infrared. Kelebihan dari Remote PC
dengan menggunakan Bluetooth adalah jarak untuk mengendalikan
komputer lebih jauh dari Remote IR, Bluetooth memerlukan sistem
pairing dalam melakukan hubungan dengan Bluetooth adapter di
komputer sehingga komputer anda aman dari serangan Remote Remote
PC Bluetooth milik orang lain, dan kekuatan sinyal Bluetooth juga
mampu menembus tembok. Namun kelemahan dari Remote dengan
menggunakan Bluetooth adalah apabila password pairing diketahui
oleh orang lain, kemungkinan PC dapat dikendalikan oleh orang lain
dan sistem Bluetooth bisa dilacak dengan mudah oleh perangkat
sejenis dari jarak jauh apabila Bluetooth adapter dalam keadaan aktif (Jubilee : 2010).
2.3.1 Remote Desktop
Remote desktop merupakan fitur yang dapat digunakan untuk mengendalikan PC lain secara sempurna karena pengguna yang telah berhasil me-remote sebuah PC dapat mengendalikannya secara bebas.
Dalam komputer istilah remote desktop mempunyai arti sebuah software atau aplikasi – aplikasi yang tersedia dari fitur OS, termasuk aplikasi grafis, untuk berjalan secara remote pada sebuah server saat ditampilkan secara local. (Wikipedia : 2010)
2.3.2 Syarat Remote Desktop
Syarat pengendalian PC dengan menggunakan Remote Desktop, diantaranya :
1. Pada komputer yang akan dikendalikan harus terinstal sistem operasi. Komputer ini disebut sebagai host atau server.
2. Komputer yang akan digunakan untuk mengendalikan PC harus memiliki sistem operasi juga dan komputer ini disebut sebagai client.
3. Kedua komputer tersebut harus terhubung dalam jaringan internet.
Dengan adanya berbagai syarat tersebut, tentu saja fitur ini
mudah digunakan oleh siapapun. Namun, perlu diingat juga bahwa
Remote desktop membutuhkan sebuah password dari komputer host
atau server yang akan dikendalikan dari jarak jauh. Dengan adanya password yang fungsinya mirip seperti proses pairing, tentu saja Remote desktop menjadi sebuah fitur dengan tingkat keamanan yang cukup tinggi. (Jubilee : 2010)
2.3.3 Protokol Remote Desktop
Penggunaan Remote Desktop tidak hanya untuk keperluan manajemen server. Terminal service juga menggunakan teknologi yang sama, namun dilengkapi dengan berbagai fitur yang cocok untuk menjalankan aplikasi, bukan sekedar untuk melakukan manajemen server. Dapat dianggap Terminal service ini merupakan versi produksi dari Remote desktop. Tidak seperti Remote Desktop biasa yang hanya memiliki jumlah session yang terbatas, jumlah koneksi user ke TS session hanya dibatasi oleh Client Access License (CAL) dan kekuatan dari TS adalah untuk menjalani session user. (Djong : 2008)
Remote Desktop Protocol (RDP) adalah protocol service
presentation terdistribusi milik Microsoft yang mana protokol ini
mengendalikan tranmisi tampilan dan input dari user yang keduanya
bekerja diantaranya client dan Terminal server. RDP diadaptasi dari
sekumpulan standard T.120 agar memenuhi persyaratan yang
dibutuhkan oleh Terminal server dan diperbaharui terus dengan fitur
fitur baru agar pengalaman user dalam menggunakan server-based
computing semakin berkembang.(Mathers : 2000)
Dapat disimpulkan dari definisi diatas bahwa RDP merupakan protokol utama dalam penerapan virtualisasi desktop yang sistem operasi virtualnya menggunakan windows. Tugas utamanya adalah mengatur, mengendalikan, menangani transmisi tampilan dan input dari user.
Protokol - protokol Remote desktop yang biasa digunakan, diantaranya :
1.
Virtual Network Computing (VNC) – Protokol Remote Desktop lintas platform.
2.
Remote Desktop Protocol (RDP) – Protokol RDP yang khusus ada di sistem operasi Windows. Fiturnya antara lain bisa mengakomodasi protokol audio secara Remote dan Remote printing.
3.
Apple Remote Desktop Protocol (ARD) – Protokol asli untuk Apple Remote Desktop di Mac OS X.
4.
NX technology (NX) – protokol terbaru lintas platform yang memungkinkan audio dan Remote printing.
5.
Independent Computing Architecture (ICA) – sebuah protokol komersial yang dikembangkan oleh Citrix System.
6.
X Window System (X11) – Protokol lintas aplikasi yang bisa
dipakai untuk menampilkan aplikasi lokal namun bisa juga dipakai
secara Remote.
7.
Rapid X Protocol (RXP) – Protokol GO-Global Graphon untuk berkomunikasi antara host dan client .
8.
Appliance Link Protocol (ALP) – Sebuah protocol yang dikembangkan oleh Sun Microsystem yang meliputi audio (play and record), Remote printing, Remote USB, video.
9.
Proxy Protocol (PRX) – Sebuah protokol yang didisain untuk Remote control, Remote WMI, web conferencing, and screen recording, yang dikembangkan oleh Proxy Networks, Inc., sebelumnnya produk dari Juniper Networks, Inc.
10.
PC-over-IP (PCoIP) – Sebuah protokol yang didisain oleh Teradici.(Wikipedia : 2007)
2.3.3.1 Protokol Remote Frame Buffer (RFB)
Protokol RFB (Remote Frame Buffer) merupakan protokol yang sederhana yang berfungsi untuk mengontrol jarak jauh (remote control) antarmuka berbasis grafis (Graphical User Interface).
1. Protokol Tampilan (Display Protocol)
Protokol RFB ini menyediakan protokol
tampilan (display protocol) dimana RFB server
mengirimkan frame buffer update kepada RFB client
yang mengontrolnya. Adapun frame buffer update
tersebut cara kerjanya yang paling mendasar adalah
meletakkan kotak (rectangle) pada posisi data pixel (x,y)
kedalam frame buffer, kemudian dari masing-masing frame buffer tersebut secara konsisten akan dikirimkan ke RFB client. Akhir dari proses ini adalah RFB client akan menyusun kembali frame-frame yang diterima tersebut sehingga client tersebut memiliki antarmuka yang sama dengan server.(Richardson, 2003)
2. Protokol Masukan (Input Protocol)
Selain menyediakan display protocol, protokol RFB juga menyedikan input protocol. Protokol input ini menggunakan model standard yang telah ada dalam workstation seperti misalnya keyboard dan multi-button pointing device (mouse,pen-handwriting dan sebagainya).
Adapun cara kerja protokol input ini adalah client akan mengirimkan data stream ke server berupa data text ketika pengguna (user) melakukan penekanan tombol keyboard atau posisi pointing (x,y) ketika user mengarahkan atau menekan tombol mouse.
3. Representasi Data Pixel
Interaksi antara client dan server pada protokol
RFB diawali dengan negosiasi mengenai format dan
pengkodean data pixel yang akan dikirim. Pada intinya
server harus menyediakan format pixel yang diinginkan
oleh client. Format piksel mengacu pada representasi
warna individu dari nilai-nilai pixel. Bentuk paling umum pada format pixel adalah 24-bit atau 16-bit "true colour", dimana bit-bidang dalam nilai pixel diterjemahkan langsung ke warna intensitas merah, hijau dan biru (red, green, blue), dan 8-bit "map colour"
dimana pemetaan tersebut dapat digunakan untuk menerjemahkan dari nilai pixel tersebut ke intensitas RGB. Pengkodean (encoding) mengacu pada bagaimana sebuah persegi panjang (rectangle) dari pixel data yang akan dikirimkan melalui media transmisi. Setiap rectangle dari data pixel diawali oleh sebuah header memberikan posisi koordinat X, Y persegi panjang pada layar, lebar dan tinggi persegi panjang, dan tipe encoding yang menentukan penyandian dari data pixel. Adapun contoh jenis pengkodean yang ditetapkan pada saat ini Raw, CopyRect, RRE, Hextile dan ZRLE.
4. Protokol Pesan (Message Protocol)
Protokol RFB dapat beroperasi pada protokol
TCP/IP yang popular digunakan untuk proses komunikasi
data sampai saat ini. Terdapat tiga tahapan yang terdapat
pada protokol ini. Fase pertama adalah handshaking yang
tujuannya adalah untuk saling memberitahukan dan
menyetujui versi dan keamanan yang akan digunakan
oleh server dan client. Fase yang kedua adalah inisialisasi dimana pada fase ini client akan mengirimkan pesan ClientInit sedangkan server akan membalasnya dengan ServerInit. Fase inisialisasi ini bertujuan untuk saling memberikan informasi mengenai ukuran resolusi layer dan nama komputer client yang terkoneksi dengan server.
Fase yang ketiga adalah fase interaksi normal yaitu fase saling bertukar data dimana client akan mengirimkan pesan ke server dan server akan mengirimkan pesan sesuai dengan permintaan client.
2.3.4 Windows Terminal Service
Windows Terminal service merupakan produk Terminal server milik Microsoft. Dapat dilihat dari definisi definisi berikut :
Ide yang melatarbelakangi Terminal service sangat sederhana dan pasti familiar bagi semua orang yang berpengalaman dalam mengakses lingkungan grafis seperti X windows, dimana kebanyakan proses sebuah aplikasi terjadi di-Remote server, hanya masukan visual beserta keluarannya yang ditangani oleh PC client. Terminal service ini membawa fungsi yang sama kedalam lingkungan Windows.
Berbicara Terminal service berarti membahas mengenai
dukungan multiuser,….perbedaan paling nyata antara model
Windows server standard dan application server (Terminal service)
adalah dukungan multiuser. Sampai diperkenalkannya Winframe dan kemudian Terminal server. Proses “logging on” ke windows server diartikan salah satu dari tiga hal berikut :
a. Logging on at the local console : administrator atau user logon menggunakan keyboard, mouse dan monitor secara langsung terhubung ke komputer.
b. Remotely accessing at server resource : user mengakses sumber daya yang ada di server, seperti file, printer, registry server atau service server lainnya.
c. Remotely accessing the local console : user mengakses komputer secara remote menggunakan sebuah tool seperti pcAnywhere, VNC, atau fitur SMS Remove Control. Contoh kasus, seorang user yang mengendalikan sesi dari user lainnya yang secara fisik memang sudah log on ke dalam komputernya. (Mathers : 2005)
Windows Terminal service adalah pengembangan sistem operasi windows yang memungkinkan user untuk menjalankan sistem operasi dan aplikasi yang berjalan di windows server melalui Terminal emulasi.
Kapan windows Terminal service ini digunakan :
1. Sangat cocok untuk pengembangan aplikasi tersentralisasi
2. Dapat bekerja dengan jumlah data yang besar pada koneksi dengan bandwidth yang kecil.
3. Ketika banyak PC client yang masih menggunakan hardware lama
Keuntungan windows Terminal service :
1. Managemen dan support yang mudah dan tersentralisasi 2. Bias digunakan pada koneksi dengan bandwidth yang kecil 3. Tidak perlu melakukan upgrade PC client
4. User bisa menggunakan Windows Powered Thin Client ,older Windows PC, atau Non-window-based Desktop
5. Sangat mudah melakukan perubahan kapasitas server disesuaikan dengan aplikasi yang digunakan dan jumlah user yang terhubung.
Kekurangan Windows Terminal Server :
1. Kurang cocok untuk aplikasi aplikasi grafis yang intensif(rendering 3D)
2. Kurang cocok untuk aplikasi aplikasi multi media yang ekstensif 3. Tidak didesain untuk “offline worker”
Protocol utama yang digunakan dalam Terminal service ini adalah Remote Desktop Protokol (RDP). Protocol ini yang akan mengatur komunikasi PC client ke PC server melalui mekanisme Remote.
Terminal service dapat diakses melalui client dengan 2 cara :
1. Full session (Full Desktop). User akan menggunakan desktop TS
untuk menjalankan aplikasi yang dikehendaki. Akses Desktop
Terminal server dapat menggunakan RDP client atau
menggunakan web browser.
2. Remote application. Aplikasi dijalankan user secara remote dan memberikan kesan seolah olah aplikasi tersebut telah diinstal di dalam komputer user. Konfigurasi ini membutuhkan Terminal service Remote App. (Bernardi : 2003)
2.4 Virtualisasi
Virtualisasi merupakan perkembangan teknologi yang sangat popular dewasa ini. Meskipun sebetulnya sudah dikembangkan sejak lama oleh perusahaan komputer IBM.
2.4.1 Sejarah Virtual
Saat ini virtualisasi dianggap sebuah teknologi yang tergolong baru dan sangat menarik, padahal sebetulnya teknologi virtualisasi sudah dikembangkan sejak 30 tahun yang lalu. Perusahaan sistem berkala mainframe maupun kecil sudah menawarkan teknologi virtualisasi dan juga mengembangkan agar dapat dipergunakan pada banyak sumber daya komputer, media penyimpanan, jaringan komputer, user access, penelitian dan pengembangan aplikasi.
2.4.2 Konsep Virtualisasi
Secara sederhana, virtualisasi adalah proses pemisahan service – service dari mesin fisik. Praktiknya, virtualisasi menyediakan kemampuan dalam menjalankan aplikasi, sistem operasi atau service lainnya didalam sebuah lingkungan yang berbeda secara logic.
Biasanya semua ini harus dijalankan diatas beberapa komputer, tetapi
dengan virtualisasi semua itu dapat digabungkan. Nantinya dengan
virtualisasi ini ada satu level layer tambahan yang memisahkan aplikasi, service, dalam satu sistem operasi tersendiri.(Von Hagen : 2008)
Penerapan virtualisasi menurut (Marshall : 2006) adalah proses membuat sebuah komputer berfungsi seolah olah dua atau lebih komputer, dengan kata lain komputer didalam komputer, yang mana komputer tersebut sebagai komputer ter-virtualisasi. Komputer virtualisasi ini memiliki basic arsitektur mesin yang sama dengan komputer induknya.
Supaya komputer fisik dapat berfungsi lebih dari sekedar satu komputer, (Marshall : 2006)” …karakteristik hardwarenya harus dibuat kembali menggunakan sebuah software. Hal ini dapat terwujud oleh sebuah lapisan software yang disebut dengan abstraksi yang digunakan pada banyak sistem software termasuk didalam sistem operasi windows. Abstraksi dalam ruang lingkup virtualisasi adalah representasi dari sekumpulan hardware yang keseluruhannya dijalankan oleh software.”
Model virtualisasi menurut (Ruest : 2009) diantaranya adalah
Application Virtualization, Presentation Virtualization, Desktop
Virtualization, Management Virtualization, Network Virtualization,
Storage Virtualization, dan Server Virtualization.
2.4.3 Perbedaan Struktur Sistem Tradisional Dengan Sistem Virtual Dalam (Marshall : 2006), untuk lebih memahami lingkungan komputer virtual, alangkah lebih baiknya membandingkan organisasi komputer fisik dengan lingkungan komputer yang berjalan secara virtual. Struktur komputer tradisional biasanya memiliki sekumpulan hardware yang mana didalamnya terinstall sistem operasi dan juga terdapat program yang diinstall dalam OS tersebut. Gambar ini menunjukan struktur komputer tradisional.
Gambar 2.1 Struktur Sistem Tradisional
Didalam sebuah komputer dengan platform virtualisasi, strukturnya sedikit berbeda, karena komputer memiliki sekumpulan hardware yang terinstall didalamnya OS yang memiliki tambahan lapisan virtual. Lapisan tersebut terdapat satu atau lebih virtual mesin yang masing masing berlaku seperti sekumpulan hardware fisik dan sanggup menjalankan OS beserta aplikasi aplikasinya. Seperti yang ditunjukan pada gambar ini.
Software
Applications Software
Applications Software Applications Operating System
(Linux, Solaris, Windows, etc) Physical Hardware
(CPU,Memory, Disks, Network, etc)
Gambar 2.2 Struktur Sistem Virtual
2.4.4 Virtual Desktop
Istilah virtualisasi Desktop memiliki kembaran yaitu Virtual Desktop Infrastructure (VDI). Meski struktur katanya berbeda tapi memiliki arti yang sama.
Definisi virtualisasi menurut (Newman : 2010) adalah pemindahan desktop sistem operasi tradisional dari hardware lokal ke dalam sebuah sistem server Remote. Desktop yang tersimpan dalam server Remote tersebut dapat diakses oleh berbagai perangkat komputer.
Secara teknik, desktop virtualisasi bekerja dengan meng- enkapsulasi dan mengirimkan semua akses, service maupun aplikasi dalam OS utuh kepada perangkat lain yang terhubung dalam jaringan.
Perangkat ini dapat berbeda arsitektur maupun OS.
Virtual Machine Software
Applications Software
Applications Software Applications Operating System
Virtual Harware
Virtual Machine Software
Applications Software
Applications Software Applications Operating System
Virtual Harware
Virtualization Layer
(Virtual Machine Monitor / Hypervisor)
Physical Hardware (CPU, Memory, Disk, Network, etc)
Desktop virtualisasi menggunakan fasilitas virtual mesin yang tersimpan dan diatur secara terpusat di server. Virtual mesin ini dapat diakses oleh user dari mana saja selama user tersebut terhubung dalam jaringannya.
Definisi VDI berdasarkan situs Microsoft (2010). Virtual Desktop Infrastructure(VDI) adalah alternatif dalam proses model pengiriman desktop yang mengijinkan user dapat mengakses desktop yang berjalan di data center. Tidak seperti Terminal service, di dalam VDI masing masing user dapat mengakses ke sebuah personal desktop dari device device yang sudah ditentukan. Dengan demikian meningkatkan fleksibilitas desktop.
2.5 Teknologi Mobile 2.5.1 GPRS
GPRS (General Packet Radio Service) adalah suatu teknologi
yang memungkinkan pengiriman dan penerimaan data lebih cepat
dibandingkan dengan penggunaan teknologi Circuit Switch Data atau
CSD. Penggabungan layanan telepon seluler dengan GPRS
menghasilkan generasi baru yang disebut 2.5G. Sistem GPRS dapat
digunakan untuk transfer data (dalam bentuk paket data) yang
berkaitan dengan e-mail, data gambar (MMS), Wireless Application
Protocol (WAP), dan World Wide Web (WWW).
2.5.1.1 Sejarah GPRS
Kemunculan GPRS didahului dengan penemuan telepon genggam generasi 1G dan 2G yang kemudian mencetuskan ide akan penemuan GPRS. Penemuan GPRS terus berkembang hingga kemunculan generasi 3G, 3,5G, dan 4G. Perkembangan teknologi komunikasi ini disebabkan oleh keinginan untuk selalu memperbaiki kinerja, kemampuan dan efisiensi dari teknologi generasi sebelumnya.
1. Generasi 1G: analog, kecepatan rendah (low-speed), cukup untuk suara. Contoh: NMT (Nordic Mobile Telephone) dan AMPS (Analog Mobile Phone System).
2. Generasi 2G: digital, kecepatan rendah - menengah.
Contoh: GSM dan CDMA2000 1xRTT. 2G merupakan jaringan telekomunikasi seluler yang diluncurkan secara komersial pada GSM di Finlandia oleh Radiolinja pada tahun 1991.
a.
Time Division Multiple Access (TDMA): membagi
frekuensi radio berdasarkan satuan waktu. Teknologi
ini memungkinkan untuk melayani beberapa
panggilan secara sekaligus melakukan pengulangan-
pengulangan dalam irisan waktu tertentu yang
terdapat dalam satu channel radio.
b.
Personal Digital Cellular: Cara kerja mirip dengan TDMA, PDC lebih banyak digunakan di negara Jepang.
c.
iDEN: teknologi berbasis CDMA dengan arsitektur GSM memungkinkan untuk membuka aplikasi Private Mobile Radio dan Push to Talk.
d.
Digital European Cordless Telephone: teknologi ini berbasis TDMA digunakan untuk keperluan bisnis dalam skala menengah ke atas.
e.
Personal Handphone Secvice: teknologi ini tidak jauh berbeda dengan DECT, kecepatan transmisinya jauh lebih cepat dan digunakan dalam lingkungan yang lebih luas.
f.
IS-CDMA: Teknologi ini meningkatkan kapasitas sesi penelponan dengan menggunakan metode pengkodean yang unik untuk setiap kanal frekuensi yang digunakan.
g.
GSM: teknologi GSM menggunakan sistem TDMA dengan alokasi kurang lebih delapan di dalam satu channel frekuensi sebesar 200kHz per satuan waktu.
Kelebihan dari GSM ini adalah interface yang tinggi
bagi para provider dan penggunanya.
3. Generasi 3G : digital, kecepatan tinggi (high-speed), untuk pita lebar (broadband). Contoh: W-CDMA (atau dikenal juga dengan UMTS) dan CDMA2000 1xEV-DO.
4. Generasi 3,5G: memungkinkan akses internet yang lebih cepat. Contoh: HSDPA.
5. Generasi 4G : merupakan Long Term Evolution (LTE) yakni, evolusi dari teknologi 3GPP dan Ultra Mobile Broadband (UMB) berasal dari 3GPP2, sehingga sulit untuk dibedakan dengan jelas antara teknologi 3G dan 4G.
Contoh: Wimax Mobile Standard.
2.5.1.2 Perbedaan GPRS dan WAP
WAP merupakan kependekan dari Wireless Application Protocol adalah teknologi seperti WWW dan merupakan protokol untuk mengakses internet melalui HP, sedangkan GPRS (General Packet Radio Service ) adalah teknologi koneksi yang digunakan oleh handphone tersebut menuju jalur internet. Misalnya, kita menggunakan broadband pada PC yang terkoneksi ke modem.
2.5.1.3 Komponen Utama
Komponen-komponen utama jaringan GPRS adalah:
1. GGSN (Gateway GPRS Support Node): gerbang
penghubung jaringan GPRS ke jaringan internet. Fungsi
dari komponen ini adalah sebagai interface ke PDN (Public Data Network), information routing, network screening, user screening, address mapping.
2. SGSN (Serving GPRS Support Node): gerbang penghubung jaringan BSS/BTS ke jaringan GPRS.
Komponen ini berfungsi untuk mengantarkan paket data ke MS, update pelanggan ke HLR, registrasi pelanggan baru.
3. PCU : komponen di level BSS yang menghubungkan Terminal ke jaringan GPRS
2.5.1.4 Cara Kerja GPRS
SGSN (Serving GPRS Support Node) bertugas:
1. Mengirim paket ke Mobile Station (MS) dalam satu area 2. Mengirim sejumlah pertanyaan ke HLR untuk
memperoleh profile data pelanggan GPRS (management mobility)
3. Mendeteksi MS-GPRS yang baru dalam suatu area servis yang menjadi tanggung jawabnya (location management) 4. SGSN dihubungkan ke BSS pada GSM dengan koneksi
frame relay melalui PCU (Packet Control Unit) di dalam BSC.
GGSN (Gateway GPRS Support Node) bertugas:
1. Sebagai interface ke jaringan IP external seperti : public internet atau mobile service provider
2. Memutakhirkan informasi routing dari PDU ( Protokol Data Units ) ke SGSN.
GPRS menggunakan sistem komunikasi packet switch sebagai cara untuk mentransmisikan datanya. Packet switch adalah sebuah sistem dimana data yang akan ditransmisikan dibagi menjadi bagian-bagian kecil (paket) lalu ditransmisikan dan diubah kembali menjadi data semula.
Sistem ini dapat mentransmisikan ribuan bahkan jutaan paket per detik. Transmisi dilakukan melalui PLMN (Public Land Mobile Network) dengan menggunakan IP. Karena memungkinkan untuk pemakaian kanal transmisi secara bersamaan oleh pengguna lain maka biaya akses GPRS, secara teori, lebih murah daripada biaya akses CSD. GPRS didesain untuk menyediakan layanan transfer packet data pada jaringan GSM dengan kecepatan yang lebih baik dari GSM. Kecepatan yang lebih baik ini didapat dengan menggunakan coding scheme (CS) yang berbeda dari GSM (Wikipedia.2011).
2.6 JAVA
Java adalah nama sekumpulan teknologi untuk membuat dan
menjalankan perangkat lunak pada komputer standalone ataupun pada
lingkungan jaringan. Java2 adalah generasi kedua dari Java Platform (Generasi awalnya adalah Java Development Kit). Java berdiri diatas sebuah mesin interpreter yang diberi nama Java Virtual Machine(JVM). JVM inilah yang akan membaca bytecode dalam file .class dari suatu program yang berisi bahasa mesin. Oleh karena itu, bahasa java disebut bahasa pemprograman yang portable karena dapat dijalankan pada berbagai sistem operasi, asalkan pada sistem operasi tersebut terdapat JVM.
Platform java terdiri dari kumpulan library, JVM, kelas-kelas loader yang dipaket dalam sebuah lingkungan rutin Java dan sebuah compiler, debugger dan kakas lain yang dipaket dalam Java Development Kit (JDK).
Java2 adalah generasi yang sekarang sedang berkembang dari platform Java.
Agar sebuah program java dapat dijalankan, maka file dengan ekstensi .java harus dikopilasi menjadi file bytecode. Untuk menjalankan program java, hanya menjalankan, tidak untuk membuat kode baru lagi. JRE berisi JVM dan library Java yang digunakan.
Platform java memiliki tiga buah edisi yang berbeda, yaitu J2EE(Java2 Enterprise Edition), J2ME(Java2 Micro Edition), dan J2SE(Java2 Second Edition). J2EE adalah kolompok dari beberapa API dari Java dan teknologi selain java. J2EE dibuat untuk membuat aplikasi yang kompleks.
J2EE sering dianggap sebagai middleware atau teknologi yang berjalan di
server, namun sebenarnya J2EE tidak hanya terbatas untuk itu. Faktanya
J2EE juga mencakup teknologi yang dapat digunakan di semua lapisan dari
sebuah sistem informasi. Implementasi J2EE menyediakan kelas dasar dan
API dari java yang mendukung pengembangan dan rutin standar untuk aplikasi client maupun server, termasuk aplikasi yang berkalan di web browser. J2SE adalah lingkungan dasar dari java. Ruang lingkup keterhubungan J2EE, J2SE dan J2ME dapat dilihat pada gambar berikut.
Gambar 2.3 Ruang lingkup keterhubungan J2EE, J2SE, dan J2ME.
2.6.1 Java2 Micro Edition(J2ME)
J2ME adalah lingkungan pengembangan yang didesain untuk
meletakkan perangkat lunak Java pada barang elektronik beserta
perangkat pendukungnya. Pada J2ME, jika perangkat lunak berfungsi
baik pada sebuah perangkat maka belum tentu juga berfungsi baik
pada sebuah perangkat maka belum tentu juga berfungsi baik pada
perangkat yang lainnya. J2ME membawa java ke dunia informasi,
komunikasi, dan perangkat komputasi selain perangkat komputer
desktop yang biasanya lebih kecil dibandingkan perangkat komputer
desktop. J2ME biasa digunakan pada telepon selular, pager, personal
digital assistants (PDA’s) dan sejenisnya.
J2ME adalah bagian dari J2SE, karena itu tidak semua library yang ada pada J2SE dapat digunakan pada J2ME tetapi J2ME mempunyai beberapa library khusus yang tidak dimiliki J2SE.
Teknologi J2ME juga memiliki beberapa keterbatasan, terutama jika diaplikasikan pada ponsel. J2ME sangat tergantung pada perangkat yang digunakan, bisa dari segi merk ponsel, maupun kemampuan ponsel dan dukungannya terhadap teknologi J2ME.
Misalnya, jika sebuah ponsel tidak memiliki kamera maka jelas J2ME pada ponsel tersebut tidak dapat mengakses kamera. Keterbatasan lainnya adalah pada ukuran aplikasi karena memori pada ponsel sangat terbatas. Sebagian besar ponsel tidak mengijinkan aplikasi J2ME menulis pada file karena alasan keamanan. Keterbatasan keterbatasan tersebut akan dibahas secara lebih detail.
Configuration merupakan java library minimum dan kapasitas yang dipunya oleh para pengembangan J2ME yang maksudnya sebuah mobile device dengan kemampuan java akan dioptimalkan untuk menjadi sesuai. Configuration hanyalah mengatur hal hal tentang kesamaan sehingga dapat dijadikan ukuran kesesuaian antar device.
Misalnya sebuah lampu sepeda dirancang sedemikian rupa sehingga
dapat digunakan ileh berjenis jenis sepeda. Dalam J2ME telah
didefinisikan dua buah konfigurasi yaitu CLDC (Connected limited
Device configuration) untuk perangkat kecil dan CDC (Connected
device configuration) untuk perangkat yang lebih besar.
Gambar 2.4 Lingkup configuration
Profil berbeda dengan configuration, profil membahas sesuatu yang spesifik untuk sebuah perangkat. Sebagai contoh misalnya sebuah sepeda dengan merk tertentu tentu mempunyai ciri spesifik dengan sepeda lain.
Dalam J2ME terdapat dua buah profile yaitu MIDP dan Foundation Profile, keterhubungan antara configuration dan profile yang ada pada J2ME beserta jenis mesin virtual-nya dapat dilihat pada gambar berikut.
Aplikasi J2ME Aplikasi J2ME Applet/ Aplikasi
(MIDlet) J2SE
kompleks
Gambar 2.5 Hubungan J2ME dan J2SE
KVM CVM JVM
MIDP
CLDC
Foundation profile
CDC
J2SE
2.6.2 Connected Limited Device Configuration (CLDC)
MIDP
CLDC
Kumpulan Library
KVM Sistem Operasi
Gambar 2.6 Arsitektur J2ME
CLDC adalah perangkat dasar dari J2ME, spesifikasi asar yang berupa library dan API yang diimplementasikan pada J2ME, seperti yang digunakan pada telepon selular, pager dan PDA.
Perangkat tersebut dibatasi dengan keterbatasan memori, sumber daya dan kemampuan memproses. Spesifikasi CLDC pada J2ME adalah spesifikasi minimal dari package, kelas dan sebagian fungsi java virtual machine yang dikurangi agar dapat diimplementasikan dengan keterbatasan sumber daya pada alat alat tersebut, JVM yang digunakan disebut KVM (Kilobyte Virtual Machine). Posisi CLDC pada arsitektur J2ME dapat dilihat pada gambar di atas.
2.6.3 Connected Device Configuration(CDC)
CDC adalah spesifikasi dari konfigurasi J2ME. CDC merupakan komunitas proses pada java yang memiliki standarisasi.
CDC terdiri dari virtual machine dan kumpulan library dasar untuk
dipergunakan pada profil industri. Implementasi CDC pada J2ME adalah source code yang menyediakan sambungan dengan macam macam platform.
Berikut adalah perbandingan antara CLDC dan CDC : Tabel 2.1 Perbandingan CLDC dan CDC
CLDC CDC
Mengimplementasikan sebagian dari J2SE
Mengimplementasikan seluruh fitur J2SE
JVM yang digunakan adalah KVM JVM yang digunakan adalah CVM Digunakan pada perangkat genggam
(handphone, PDA, twoway pager) dengan memory terbatas (160 – 512 KB)
Digunakan pada perangkat genggam (internet TV, Nokia Communicator, car TV) dengan memory minimal 2 MB.
Prosesor : 16/32 bit Prosesor : 32 bit
2.6.4 Mobile information Device Profile (MIDP)
MIDP adalah spesifikasi untuk sebuaj profil J2ME. MIDP
memiliki lapisan diatas CLDC, API tambahan untuk daur hidup
aplikasi, antarmuka, jaringan, dan penyimpanan persisten. Pada saat ini
terdapat MIDP 1.0 dan MIDP 2.0. fitur tambahan MIDP 2.0 adalah
API untuk multimedia. Pada MIDP 2.0 terdapat dukungan memainkan
tone, tone sequence dan file WAV walaupun tanpa adanya Mobile
Media API (MMAPI). Posisi MIDP pada arsitektur J2ME dapat dilihat pada tabel tersebut:
Berikut adalah perbandingan MIDP 1.0 dan MIDP 2.0 : Tabel 2.2 Perbandingan MIDP 1.0 dan MIDP 2.0
Spesifikasi MIDP 1.0 MIDP 2.0
Display 96 x 54 96 x 54
Kedalaman Display 1 bit 1 bit
Bentuk Pixel Mendekati 1 : 1 Mendekati 1 : 1
Input Keyboard dan Touch
screen
Keyboard dan Touch screen
Memory 128 KB memory non-
volatile untuk komponen MIDP
8 KB memory non-volatile untuk data persistence yang dibuat oleh aplikasi 32 KB memory volatile untuk JRE
256 KB memory non-volatile untuk komponen MIDP
8 KB memory non-volatile untuk data persistence yang dibuat oleh aplikasi 32 KB memory volatile untuk JRE
Jaringan Dua arah, tanpa kabel Dua arah, tanpa kabel Library J2ME yang
bukan merupakan Library J2SE
javax.microedition.lcdui, javax.microedition.midlet, javax.microedition.rms
javax.microedition.lcdui, javax.microedition.midlet, javax.microedition.rms,
javax.microedition.lcdui.game,
javax.microedition.media,
javax.microedition.pki
MIDP user interface API memiliki API level tinggi dan level rendah. API level rendah berbasiskan penggunaan dari class abstrak canvas sedangkan class API level tinggi antara lain alert, form, list dan textbox yang merupakan ekstensi dari class abstrak screen. API level rendah lebih memberikan kemudahan kepada pengembang untuk memodifikasi sesuai dengan kehendaknya, sedangkan API level tinggi biasanya hanya memberikan pengaksesan yang terbatas. Arsitektur antarmuka MIDP dapat dilihat pada gambar berikut :
Gambar 2.7 MIDP User Interface
2.6.5 Kilobyte Virtual Machine (KVM)
KVM adalah paket JVM yang didesain untuk perangkat yang kecil. KVM mendukung sebagian dari fitur fitur JVM, seperti misalnya KVM tidak mendukung operasi floating-point dan finalisasi objek.
KVM diimplementasikan dengan menggunakan C sehingga sangat mudah beradaptasi pada tipe platform yang berbeda.
Displayable
Screen Canvas
Alert Form List TextBox