7
BAB 2
LANDASAN TEORI
2.1
Jaringan Komunikasi
Jaringan adalah suatu mekanisme
yang memungkinkan berbagai komputer
terhubung dan para penggunanya dapat berkomunikasi dan share resources satu sama
lain (Norton, 1999, p5). Informasi dan data bergerak melalui
media
transmisi
jaringan
sehingga memungkinkan pengguna jaringan komputer untuk saling bertukar dokumen
dan data, mencetak pada printer yang sama
dan bersama-sama menggunakan
hardware/software
yang
terhubung
dengan
jaringan.
Tiap
komputer,
printer atau
peralatan lainnya yang terhubung
dengan
jaringan
disebut
node. Sebuah jaringan
komputer dapat memiliki dua, puluhan, ribuan bahkan jutaan node.
2.1.1 Model TCP/IP layer
Model TCP/IP dikembangkan Departemen Pertahanan USA (DoD) dengan
tujuan
ingin
menciptakan
suatu
jaringan
yang
dapat
bertahan
dalam segala
kondisi.
TCP/IP adalah jenis protokol pertama yang digunakan dalam hubungan
internet,
sehingga banyak
istilah dan konsep yang dipakai dalam hubungan
internet berasal dari
istilah dan konsep yang dipakai oleh
protokol TCP/IP. Perkembangan TCP/IP
menciptakan suatu standar de facto, yaitu suatu standar yang diterima oleh kalangan
pemakai dengan sendirinya karena pemakaian yang luas. Model TCP/IP ini mempunyai
4
layer,
yaitu
:
application
layer, transport
layer, internet
layer, dan
network
access
layer. Beberapa layer pada
model
TCP/IP
mempunyai
nama
yang sama dengan
model
|
![]() 8
OSI. Gambar 2.1 dibawah ini
merupakan
gambaran dari
model TCP/IP dimana dapat
dilihat bahwa
model TCP/IP juga dibagi
menjadi 2 bagian,
yaitu bagian networks dan
protocols.
Gambar 2.1 TPC/IP Layer
2.1.1.1 Application Layer
Application layer pada
model
TCP/IP
menangani
protokol
tingkat
tinggi
yang
berhubungan dengan representasi,
encoding dan dialog control. Protokol TCP/IP
menggabungkan seluruh hal yang berhubungan dengan aplikasi ke dalam satu layer dan
menjamin data dipaketkan dengan benar sebelum masuk ke layer berikutnya. Beberapa
program berjalan pada
layer ini,
menyediakan layanan
langsung kepada user. Program-
program ini dan protokol yang berhubungannya meliputi HTTP (The World Wide Web),
FTP, TFTP (File Transport), SMTP (Email), Telnet, SSH (Secure remote login), DNS
(Name management).
|
9
2.1.1.2 Transport Layer
Layer transport menyediakan layanan transportasi dari host sumber ke host
tujuan. Layer transport merupakan suatu koneksi logical diantara endpoints dari suatu
jaringan,
yaitu sending host dan receiving host.
Transport protokol
membuat
segment
dan
mengumpulkan
kembali
aplikasi
layer diatasnya
menjadi data
stream yang
sama
diantara endpoints. Data stream
layer transport menyediakan layanan transportasi end-
to-end. Protokol-protocol yang berfungsi pada layer ini adalah :
Transmission Control Protocol (TCP)
TCP berfungsi untuk mengubah suatu blok
data
yang besar
menjadi
segmen-
segmen yang dinomori dan disusun secara berurutan agar si penerima dapat
menyusun kembali segmen-segmen tersebut seperti waktu pengiriman. TCP ini
adalah jenis protocol connection oriented yang memberikan layanan bergaransi.
Sifat dari protokol ini diantara yaitu :
-
connection oriented
Dua aplikasi
pengguna
TCP
harus
melakukan
pembentukan
hubungan
untuk dapat melakukan pertukaran data.
-
reliable
TCP menerapkan proses deteksi kesalahan paket dan retransmisi.
-
byte stream service
Paket yang dikirim akan sampai pada tujuan secara berurutan.
|
![]() 10
User Datagram Protokol (UDP)
UDP adalah
jenis protocol connectionless oriented. UDP bergantung pada
lapisan atas untuk mengontrol kebutuhan data. Oleh karena penggunaan
bandwidth yang efektif, UDP banyak dipergunakan
untuk aplikasi-aplikasi
yang
tidak peka terhadap gangguan jaringan seperti SNMP dan TFTP.
Sifat dari
protokol ini yaitu
-
connectionless
Dalam mengirim paket dari tempat asal ke tempat tujuan, masing-masing
tidak mengadakan handshake terlebih dahulu.
-
unreliable
Protokol tidak menjamin datagram yang dikirim sampai ke tempat tujuan
tetapi
berusaha
sebaik-baiknya
agar
paket
yang
dikirim sampai
pada
tempat tujuan.
2.1.1.3 Internet Layer
Tujuan dari
layer
internet
adalah
untuk memilih
jalur/path terbaik bagi
paket-
paket
data
di
dalam jaringan.
Protokol
utama
yang
berfungsi
pada
layer
ini
adalah
Internet Protocol (IP). Penentuan jalur
terbaik dan packet switching terjadi pada
layer
ini. Protokol-protokol yang berfungsi pada layer ini antara lain adalah IP, ARP, RARP,
BOOTP, DHCP, ICMP.
IP merupakan protokol yang memberikan alamat atau identitas logika untuk
peralatan di jaringan komputer. IP mempunyai tiga fungsi utama, yaitu servis
yang tidak bergaransi (connectionless oriented), pemecahan (fragmentation) dan
penyatuan paket-paket, fungsi meneruskan paket (routing).
|
![]() 11
Address Resolution Protocol (ARP) adalah protokol
yang
mengadakan
translasi
dari IP
address
yang
diketahui
menjadi
alamat
hardware
atau
MAC
address.
ARP ini termasuk jenis protokol broadcast.
Reverse Address Resolution Protocol (RARP) adalah protokol yang berguna
mengadakan translasi MAC address yang diketahui
menjadi IP address.
Router
menggunakan protokol RARP ini untuk mendapatkan IP address dari suatu MAC
address yang diketahuinya.
Bootstrap Protocol (BOOTP) adalah protokol yang digunakan untuk proses boot
diskless
workstation.
Dengan
protocol
ini,
suatu
IP address dapat diberikan ke
suatu peralatan di jaringan berdasarkan MAC address-nya.
Dynamic Host
Configuration
Protocol (DHCP)
merupakan
kelanjutan
protokol
bootstrap yang dapat memberikan
IP
address secara otomatis ke suatu
workstation yang menggunakan protocol TCP/IP.
DHCP
bekerja
dengan relasi
client-server.
Internet Control Message Protocol (ICMP) adalah protokol
yang berguna untuk
melaporkan jika terjadi suatu masalah dalam pengiriman data.
2.1.1.4 Network Access Layer
Network
access
layer
disebut
juga
host-to-network
layer. Layer
ini
berkaitan
dengan
hal-hal
yang paket IP
perlukan
untuk
membuat hubungan fisik dengan
media
jaringan.
Driver untuk software aplikasi, modem, dan alat lainya beroperasi pada layer
ini. Network access layer berfungsi memetakan IP address ke alamat fisik hardware dan
enkapsulasi dari paket-paket IP menjadi frame-frame. Protokol-protokol yang berfungsi
pada layer ini adalah Ethernet, Token Ring, FDDI.
|
![]() 12
2.1.2 Model OSI Layer
Open Sistems Interconnection Reference Model
(Model
OSI)
merupakan
suatu
deskripsi
abstrak layering
untuk
rancangan
jaringan
komputer
dan
komunikasi,
yang
dikembangkan sebagai bagian dari Open Sistems Interconnect (wikipedia.com).
Biasanya
juga disebut
sebagai seven
OSI
layers model. Model OSI
membagi
fungsi-
fungsi
dari
suatu protokol
menjadi
beberapa
layer.
Setiap
layer
mempunyai
properti
yang menggunakan fungsi layer dibawahnya, memproses data pada layer tersebut, lalu
mengirim ke layer
yang selanjutnya.
Berikut pada
Gambar 2.2 dibawah
ini
merupakan
tujuh layer dari model OSI beserta dengan fungsinya masing-masing pada setiap layer.
Layer pada model OSI dibagi menjadi 2 bagian besar, yaitu layer media dan layer host.
Gambar 2.2 OSI Layer
|
13
2.1.2.1 Physical Layer
Layer ini berhubungan langsung dengan hardware. Physical layer
mendefinisikan semua spesifikasi fisik dan elektris untuk semua peralatan meliputi level
tegangan, spesifikasi kabel, tipe konektor dan timing. Fungsi utama dari layer ini adalah
bertanggung
jawab
untuk
mengaktifkan dan
mengatur physical
interface
dari
jaringan
komputer, memodulasi data digital antara peralatan yang digunakan user dengan signal
yang berhubungan. Peralatan yang merupakan physical layer antara lain hub dan
repeater.
2.1.2.2 Data link Layer
Layer Data Link
berfungsi
menghasilkan
alamat
fisik
(physical
addressing),
pesan-pesan kesalahan (error notifications), pemesanan pengiriman data (flow control).
Switch dan bridge merupakan peralatan yang bekerja pada layer ini.
2.1.2.3 Network Layer
Network layer menyediakan prosedur dalam mentransfer data dari suatu sumber
ke suatu tujuan melalui satu atau lebih jaringan (path selection) dengan memperhatikan
quality of service yang diperlukan oleh layer transport. Network layer bertanggung
jawab dalam network routing, addressing dan logical protocol. Peralatan
yang bekerja
pada layer ini adalah router.
|
14
2.1.2.4 Transport Layer
Layer transport
mensegmentasi data dari pengirim dan
merakit kembali data ke
dalam sebuah data stream pada komputer penerima. Pada
layer
ini juga
menyediakan
servis
komunikasi.
Dalam menyediakan
sebuah
servis
yang
reliabel
pada
layer
ini
menyediakan error detection dan recovery serta flow control.
2.1.2.5 Session Layer
Sesuai dengan
namanya,
layer
ini berfungsi
untuk
menyelenggarakan,
mengatur
dan memutuskan sesi komunikasi.
Session layer
menyediakan servis kepada layer
presentation. Layer ini juga mensinkronisasi dialog diantara dua host layer presentation
dan mengatur pertukaran data.
2.1.2.6 Presentasion Layer
Layer ini mengelola informasi yang disediakan oleh layer aplikasi (application
layer) supaya informasi yang dikirimkan dapat dibaca oleh layer aplikasi
pada
sistem
lain.
Jika diperlukan, pada
layer ini
dapat
menterjemahkan beberapa data
format
yang
berbeda, kompresi, dan enkripsi.
2.1.2.7 Application Layer
Layer
ini
adalah
layer
yang
paling
dekat
dengan user/pengguna,
layer
ini
menyediakan sebuah layanan jaringan kepada pengguna aplikasi. Layer ini berbeda
dengan layer lainnya yang dapat menyediakan layanan kepada layer lain. Sebagai contoh
: program pengolah kata, email, ftp, dll.
|
![]() 15
2.2
Klasifikasi Jaringan
Jaringan dibagi menjadi tiga klasifikasi utama, yaitu Local Area Network (LAN),
Metropolitan Area Network (MAN) dan Wide Area Network (WAN).
2.2.1 Local Area Network (LAN)
LAN
merupakan
suatu
jaringan
komunikasi
yang
saling
menghubungkan
berbagai jenis perangkat dan menyediakan pertukaran data diantara perangkat-perangkat
tersebut (Stallings, 2004, p16). Jaringan datanya bersifat high-speed, fault-tolerant dan
memiliki cakupan area geografis yang sempit. Sebuah LAN adalah jaringan yang
dibatasi oleh area yang relatif kecil, umumnya
dibatasi oleh area lingkungan seperti
sebuah perkantoran di sebuah gedung, atau sebuah sekolah, dan biasanya tidak jauh dari
sekitar 1 km persegi (cisco.netacad.net). LAN biasanya didesain untuk beroperasi pada
area
geografis
yang
terbatas,
memungkinkan multi-access
terhadap
high-bandwidth
media,
mengontrol jaringan secara
privat dalam
administrasi
lokal,
menyediakan full-
time
connectivity terhadap
layanan
lokal, dan
menghubungkan
peralatan
yang
bersebelahan secara fisik.
Ciri-ciri LAN :
Ruang lingkup kecil (Gedung atau kampus kecil).
Rate data harus tinggi.
Biasanya menggunakan sistem broadcast.
Dikendalikan secara private oleh administrator lokal.
Menghubungkan secara fisik alat-alat yang berdekatan.
|
![]() 16
Menyediakan koneksi
ke
layanan
lokal
setiap saat
(seperti
printer dan
file di
server).
2.2.2.1 Topologi Jaringan
Denah bagaimana cara menghubungkan komputer satu dengan yang lainnya
disebut topologi jaringan. Topologi LAN dapat digambarkan baik secara fisikal maupun
logikal. Physical topology menggambarkan
penempatan
komponen-komponen
yang
membuat
suatu
LAN.
Topologinya
bukan
suatu
peta
jaringan.
Sedangkan logical
topology
menggambarkan
koneksi
yang
mungkin antara pasangan-pasangan
endpoint
devices yang dapat berkomunikasi serta bagaimana
koneksi fisiknya (Norton, 1999,
p139).
Physical topology
suatu
jaringan
yang sering
digunakan adalah topologi bus,
ring,
star,
extended
star,
hierarchical,
dan mesh.
Gambar
2.3
dibawah
ini
adalah
gambaran mengenai berbagai topologi fisik yang sering digunakan.
|
![]() 17
Gambar 2.3 Topologi jaringan
Topologi Bus
Menggunakan "single backbone segment" yang biasanya berupa kabel coaxial
sebagai penghubung semua komputer
yang ada pada jaringan. Semua komputer
tersebut terhubung secara langsung ke kabel tersebut.
Topologi Ring
Topologi ring menghubungkan satu komputer dengan komputer berikut, dan
seterusnya sehingga komputer paling akhir akan kembali terhubung ke komputer
yang pertama (akan membentuk seolah-olah menjadi sebuah bentuk
lingkaran/cincin). Kelemahan dari topologi ini adalah jika ada salah satu
hubungan yang terputus maka seluruh jaringan akan terpengaruh.
Topologi Star
Topologi star menghubungkan semua kabel ke satu buah titik pusat. Titik pusat
ini biasanya berupa hub atau switch yang berfungsi sebagai konsenrator sehingga
seolah-olah komputer yang terhubung berbentuk seperti bintang. Kerugian dari
topologi ini adalah banyaknya biaya yang dikeluarkan untuk kabel-kabel dan
sebuah device khusus. Tetapi topologi ini
lebih
cepat
karena
masing-masing
terminal komputer dihubungkan dengan komputer pusat.
|
18
Topologi Extended Star
Topologi extended star menggabungkan beberapa topologi star menjadi satu.
Hub/switch yang dipakai untuk menghubungkan beberapa
komputer
pada satu
jaringan dengan menggunakan topologi star, akan dihubungkan lagi ke
hub/switch utama.
Topologi Hieararchical
Topologi
hierarchical
dibuat
mirip
dengan topologi
extended
star
tetapi
pada
sistem jaringan yang dihubungkan dapat mengontrol arus data pada topologi.
Topologi Mesh
Topologi Mesh digunakan ketika dalam suatu jaringan
yang dibuat tidak boleh
terjadi adanya kesalahan, contohnya sistem kontrol pembangkit
tenaga
nuklir.
Jadi seperti yang bisa anda
liat
pada
gambar.
Setiap host memiliki hubungan
lansung dengan semua host
lainnya dalam
jaringan. Hal
ini juga
merefleksikan
Internet, yang memiliki banyak jalur ke satu titik.
2.2.2
Metropolitan Area Network (MAN)
Sebuah MAN, biasanya meliputi area yang lebih besar dari LAN, misalnya antar
wilayah
dalam satu
propinsi.
Dalam
hal
ini
jaringan
menghubungkan beberapa
buah
jaringan-jaringan
kecil
ke
dalam lingkungan
area
yang
lebih
besar,
misalnya
jaringan
Bank
dimana
beberapa
kantor
cabang
sebuah
Bank
di
dalam sebuah
kota
besar
dihubungkan antara satu dengan lainnya.
|
![]() 19
Gambar 2.4 LAN, MAN, WAN
2.2.3
Wide Area Network (WAN)
Wide Area Network
adalah jaringan yang lingkupnya biasanya sudah
menggunakan sarana satelit ataupun kabel bawah laut yang menghubungkan pengguna
jaringan-jaringan dalam area geografis yang sangat luas. WAN biasanya didesain untuk
beroperasi pada area geografis yang luas, memungkinkan akses melalui serial interface
yang beroperasi pada kecepatan
yang
lebih rendah,
menyediakan koneksi full-time dan
part-time dan menghubungkan berbagai peralatan yang terpisah jauh, bahkan pada area
global.
Ciri-ciri WAN :
Daerah geografisnya luas.
Memiliki kecepatan transfer yang lebih rendah daripada LAN.
Menghubungkan alat-alat yang terpisah dalam jarak jauh, bahkan global.
Memungkingkan akses
melalui
interface serial yang beroperasi pada kecepatan
yang rendah.
Menyediakan konektifitas fulltime dan parttime.
|
20
2.3
IP address
IP address adalah alamat logika yang diberikan ke peralatan jaringan yang
menggunakan protokol TCP/IP (Wijaya, 2004, p27). IP address terdiri dari 32 bit angka
binari, yang ditulis dalam empat kelompok terdiri atas 8 bit (oktat) yang dipisah oleh
tanda titik. Contohnya : 11000000.00010000.00001010.00000001 atau dapat juga ditulis
dalam bentuk empat kelompok angka desimal (0-255) misalnya 192.16.10.1. IP address
yang terdiri atas 32 bit angka dikenal sebagai IP versi 4 (IPv4).
TCP/IP melihat
semua IP address
sebagai dua bagian jaringan,
yaitu network ID
dan host ID. Network ID
menentukan alamat
jaringan sedangkan host
ID menentukan
alamat host atau komputer. Oleh sebab itu, IP address memberikan alamat lengkap suatu
komputer berupa
gabungan alamat jaringan dan alamat host. Berapa jumlah kelompok
angka yang termasuk network ID dan berapa yang termasuk host ID adalah bergantung
pada kelas IP address yang dipakai.
2.3.1
Kelas-kelas dalam IP address
IP address dapat dibedakan menjadi lima kelas, yaitu A, B, C, D, dan E
(Mansfield, 2002,
p134).
Dalam
hal
ini
kelas
A,
B, dan C digunakan
untuk
address
biasa. Sedangkan kelas D digunakan untuk multicasting (224.0.0.0 239.255.255.255)
dan
kelas E
(240.0.0.0
247.255.255.255)
dicadangkan dan belum digunakan.
Agar
peralatan dapat mengetahui kelas suatu IP address, maka setiap IP harus memiliki
subnet mask. Dengan memperhatikan default subnet mask yang diberikan, kelas suatu IP
address dapat diketahui. Berikut pada Tabel 2.1
dijelaskan
mengenai
pengelompokan
kelas-kelas IP address beserta dengan jumlah jaringan dan jumlah host per jaringan yang
dapat digunakan beserta default subnet mask-nya.
|
![]() ![]() 21
Tabel 2.1 Kelas-kelas IP address
Kelas
IP
Address
Kelompok
oktat
pertama
Network
ID
Host
ID
Jumlah
jaringan
Jumlah
host per
jaringan
Default
subnet
mask
A
1 126
w.
x.y.z
127
16.777.216
255.0.0.0
B
128 191
w.x
y.z
16.384
65.536
255.255.0.0
C
192 - 223
w.x.y
Z
2.097.152
256
255.255.255.0
Dalam penggunaan IP address ada peraturan tambahan yang harus diketahui, yaitu :
Angka 127 pada oktat pertama digunakan untuk loopback.
Network ID tidak boleh semuanya terdiri atas angka 0 atau 1.
Host ID tidak boleh semuanya terdiri atas angka 0 atau 1.
Jika host
ID berupa angka binari 0, IP address
ini merupakan network ID
jaringannya.
Jika
host
ID
semuanya
berupa
angka
binari
1,
IP address
ini
biasanya
digunakan untuk broadcast ke semua host dalam jaringan lokal.
2.3.2
Private dan Public IP address
Internet
Assigned
Number
Authority (IANA) yang merupakan badan
internasional, yang mengatur masalah pemberian IP address
untuk digunakan dalam
internet, menyediakan kelompok-kelompok IP address yang dapat dipakai tanpa
pendaftaran
yang
disebut
private
IP
address.
Private
address
atau
non-routable ini
dialokasikan
untuk digunakan pada jaringan
yang tidak terkoneksi ke
internet.
Berikut
|
![]() 22
ini pada Tabel 2.2 merupakan kelompok IP address yang termasuk ke dalam kelompok
private address.
Tabel 2.2 Kelompok private IP address
Kelas
private IP address
Kelompok
private IP addess
A
10.0.0.1 10.255.255.254
B
172.16.0.1 172.31.255.254
C
192.168.0.1 192.168.255.254
Sedangkan
untuk public IP address, alamat
yang digunakan diluar dari private
IP address tersebut. Setiap komputer yang terhubung dengan internet menggunakan
public IP address sebagai alamatnya, oleh karena itu tidak boleh ada public IP address
yang
sama
dalam internet.
Pembagian
public IP
address juga
dilakukan
oleh
IANA.
Public IP address bisa didapatkan dengan membeli pada Internet Service Provider (ISP)
terdekat.
2.4
Monitoring
Monitoring adalah
suatu
proses
mengukur,
mencatat,
mengumpulkan,
memproses dan mengkomunikasikan informasi untuk membantu pengambilan keputusan
manajemen proyek (Calyton & Petry, 1983).
Monitoring tersebut meliputi :
1. Mengecek dan
mencatat
keadaan
yang
berkaitan dengan
pelaksanaan
kegiatan
yang sedang berlangsung.
|
23
2. Melihat suatu perkembangan suatu kegiatan yang sedang berjalan yang
mencakup bimbingan, pembinaan, pemantauan, dan pengendalian.
2.5
Remote Akses
Remote
akses
adalah
suatu
proses untuk
komunikasi,
pertukaran
data
dan
manajemen server atau perangkat dari jarak jauh.
2.6
Host
Host
merupakan
suatu
komputer
yang
terdapat pada suatu jaringan yang
menyediakan
data
dan
servis-servis
yang
ada
untuk
komputer-komputer lain pada
jaringan tersebut. Sebuah host dapat juga disebut sebagai sebuah server (Anonym,
2003).
Host dapat juga diartikan sebagai komputer pusat atau pengendali di dalam suatu
jaringan atau lingkungan pemrosesan terdistribusi yang menyediakan servis kepada
komputer
lain atau terminal-terminal yang dapat diakses
lewat
jaringan
tersebut. Pada
satu host umumnya terdapat beberapa servis, seperti SMTP (email) dan HTTP (web).
2.7
Port
Port yang dikenal juga sebagai point of entry adalah suatu lokasi pada perangkat
keras
yang
berfungsi
sebagai
jalur
keluar masuknya
data
dari
suatu
alat
hitung
(computing device). Pada umumnya komputer mempunyai 2 jenis port, yaitu port
internal dan port eksternal. Adapun port-port internal berfungsi untuk menghubungkan
|
24
disk drive, monitor, dan keyboard, sedangkan port eksternal digunakan untuk
menghubungkan modem, printer, mouse, dan alat-alat lainnya (Anonym, 2003).
Di dalam jaringan
TCP/IP dan UDP,
port adalah sebuah
nama
yang diberikan
kepada suatu endpoint dari suati koneksi logis. Angka-angka port
mengidentifikasikan
jenis
dari port
tersebut,
jadi
angka-angka
port yang berbeda
digunakan
untuk
tujuan
yang berbeda pula. Contoh port 80 digunakan untuk akses HTTP (web).
Tiap-tiap Internet Protocol
mempunyai
suatu dedicated port,
yaitu
suatu port
yang
telah dispesifikasikan atau
memiliki nomor port yang telah baku. Sebagai contoh
servis FTP menggunakan port 21, servis HTTP menggunakan port 80, dan servis POP3
menggunakan port 110. Tiap-tiap servis dapat juga menggunakan port yang tidak baku,
tetapi di sisi Client juga harus disesuaikan portnya untuk mengakses servis tersebut.
2.8
GSM dan Teknologi Pendukungnya
Perkembangan
dari
teknologi
GSM
di Indonesia
sangat
pesat,
dan
jangkauan
servis
dari
service
provider
sudah
sangat
luas.
Para
pengguna
telah
terbiasa
dengan
sistem komunikasi
mobile
yang
ada,
seperti
halnya
pengiriman
informasi
melalui
Handphone pada jaringan GSM.
2.8.1
GSM
GSM
(Global
Sistem for
Mobile
Communications)
merupakan
komunakasi
nirkabel (wireless) yang telah ada saat ini dan sedang berkembang yang memiliki fitur-
fitur yang banyak dan ekstensif di dalam hal suara dan data. Perkembangan dari
GSM
dalam
hal
transfer data
sangat
cepat,
dimulai
dari
generasi
ke 1
yaitu
CSD
(Circuit
Switch Data), generasi ke 2 yaitu
GPRS (General Packed Radio Service),
generasi ke
|
25
2,5
yaitu
EDGE
(Enhanced Data Rates
for GSM Evolution)
dan
generasi
ke
3
yang
berbasiskan pada teknologi W-CDMA (Wide band Code Division Multiple Acces).
GSM
merupakan
sistem Mobile
Phone
digital
yang digunakan
secara
luas
dan
merupakan
standar telepon
selular
di
Eropa.
GSM
mula-mula
didefinisikan
sebagai
suatu standar terbuka yang digunakan di seluruh Eropa untuk sebuah jaringan seluler
digital yang mendukung suara, data, pesan teks, dan lintas operator.
Saat
ini
GSM
telah
digunakan
dilebih
dari
160
negara
dan
menurut
asosiasi
GSM, pengguna dari GSM ini meliputi 70% dari seluru pasar handphone digital.
2.8.2
SMS
SMS (Short Message Service) merupakan suatu fitur yang terdapat pada jaringan
GSM memungkinkan pesan teks sampai dengan 160 karakter untuk dikirim dan diterima
lewat jaringan networks operator message center kepada handphone atau dari internet
dengan
menggunakan
website
SMS
Gateway.
Pada
jaringan
GSM
terdapat
dua
tipe
SMS, yaitu :
1. Point to point SMS
Dedicated service diantara dua pengguna, dimana memerlukan adanya
koneksi tetap point to point.
2. Point to omnipoint atau Cell broadcast SMS
Broadcast service diantara jaringan pada satu atau lebih base station, dan
seluruh
user
yang berada
di dalam
cell
tersebut
atau dalam
satu
servis
area yang sama.
|
26
2.8.3
Kartu SIM
Kartu
SIM
(Subscriber
Identity
Module)
adalah
kartu
cerdas
yang
berada
di
dalam semua
telepon
GSM
(Anonym,
2003).
SIM
tersebut
mengidentifikasikan
pengguna
kepada
jaringan,
menanggani
autentifikasi
dan
menyediakan
penyimpanan
data penting pemakai. Kartu SIM dapat juga berisi beberapa aplikasi yang berjalan pada
telepon yang kompatibel (SIM Application Toolkit)
2.8.4
Service Provider
Service provider adalah sebuah perusahaan yang menyediakan layanan dan akses
ke jaringan GSM bagi pengguna handphone.
2.8.5
Network Operator
Network Operator merupakan sebuah perusahaan yang memiliki lisensi untuk
menyediakan pelayanan telepom nirkabel.
2.9
Handphone
Handphone adalah salah satu alat komunikasi yang teknologinya berkembang
sangat cepat, tidak hanya dari segi perangkat keras dengan berbagai macam desain yang
menarik, tetapi juga perangkat lunak yang memberikan berbagai fitur menarik yang
mampu
membawa penggunanya ke sebuah masa depan yang tidak terbayangkan
sebelumnya (Anonym, 2003).
Handphone sekarang mempunyai berbagai macam fitur menarik, tidak hanya
digunakan
untuk berbicara dan menerima pesan saja, tetapi sudah berkembang sangat
|
27
pesat.
Sekarang
Handphone
sudah
dilengkapi
dengan
fitur
tambahan
berupa
kamera
digital, pemutar musik dan aplikasi browser untuk akses internet.
2.10
Protocol Data Unit (PDU)
Dalam pengiriman dan penerimaan pesan SMS terdapat dua
mode,
yaitu mode
teks dan mode Protocol Data Unit (PDU). Mode teks adalah format pesan dalam bentuk
teks asli yang dituliskan pada saat akan mengirim pesan. Sesungguhnya
mode teks ini
adalah hasil pengkodean dari mode PDU.
Mode
PDU
adalah
format
pesan
dalam bentuk
oktet
heksadesimal
dan
oktet
semidesimal dengan panjang mencapai 160 (7 bit) atau 140 (8 bit) karakter. Di
Indonesia, tidak semua operator GSM maupun terminal mendukung mode teks, sehingga
mode yang digunakan adalah mode PDU.
Pada pengiriman pesan terdapat dua jenis mobile, yaitu Mobile Terminated
(Handphone Penerima) dan Mobile Originated (Handphone Pengirim).
2.10.1 SMS PDU Pengirim (Mobile Originated)
SMS PDU Pengirim adalah pesan yang dikirim dari handphone ke terminal yang
kemudian dikirimkan ke SMSC (SMS Center).
Pesan yang akan dikirimkan oleh terminal
masih dalam bentuk teks, sedangkan
dalam pengiriman
ke
SMSC
harus
dalam bentuk
PDU.
Untuk
itu
sebelum dikirim,
terminal atau handphone akan melakukan perubahan dari format teks menjadi format
PDU, proses ini sering disebut proses encoding. Adapun skema dari format PDU
pengirim telah diatur dan ditetapkan oleh ETSI sebagai berikut :
|
![]() 28
SCA
PDU Type
MR
DA
PID
DCS
VP
UDL
UD
Gambar 2.5 Format SMS PDU Pengirim
2.10.1.1
Service Center Address (SCA)
Service Center Address (SCA) adalah informasi dari alamat (nomor) SMSC.
SCA
memiliki
tiga
komponen
utama,
yaitu
len, type of number, dan service center
number. Dalam pengiriman pesan SMS, nomor SMSC tidak dicantumkan.
Tabel 2.3 Service Center Address
Oktet
Keterangan
Len
Panjang informasi SMSC dalam oktet
Type of Number
Format nomor dari SMSC
81 hexa = format lokal
91 hexa = format internasional
Service Center
Number
Nomor SMSC dari operator pengirim. Jika panjangnya ganjil maka
pada karakter terakhir ditambahkan 0F hexa.
2.10.1.2
PDU Type
Nilai
default
dari
PDU
Type
untuk
SMS
pengirim
adalah
11
hexa,
yang
memiliki arti bahwa 11 hexa = 00000100.
|
![]() 29
Tabel 2.4 PDU Type Pengirim
Bit No
7
6
5
4
3
2
1
0
Nama
RP
UDHI
SRR
VPF
VPF
RD
MTI
MTI
Nilai
0
0
0
1
0
0
0
1
Keterangan :
RP
: Reply Path. Parameter yang menunjukan bahwa alur jawaban ada.
UDHI
:
User Data Header Indicator. Bit ini bernilai 1 jika data pengirim dimulai
Dengan suatu judul atau tema.
SRR
:
Status Report Request. Bit ini bernilai 1 jika laporan status pengiriman
diminta.
VPF
:
Validity Period Format. Format dari batas waktu pengiriman jika pesan
gagal diterima.
00 => Jika pesan tidak disimpan di SMSC
10 => Format relatif (1 oktet)
01 => Format enhanced (7 oktet)
11 => Format absolut (7 oktet)
RD
:
Reject Duplicates. Parameter yang menandakan ya atau tidaknya Service
Center akan menerima suatu pengiriman pesan SMS untuk suatu pesan
yang masih disimpan dalam Service Center tersebut. Ia mempunyai MR
dan DA yang sama sebagai pesan dikirimkan dari OA yang sama.
MTI
:
Message Type Indicator. Bit bernilai 0 untuk menunjukan bahwa PDU ini
adalah suatu SMS-DELIVER.
|
30
2.10.1.3
Message Reference (MR)
Message
Reference
(MR) adalah acuan dari pengaturan pesan
SMS.
Untuk
membiarkan
pengaturan
pesan
SMS
dilakukan
sendiri
oleh
handphone
tujuan,
maka
nilai yang diberikan adalah 00.
2.10.1.4
Destination Address (DA)
Destination Address
(DA)
adalah alamat
(nomor)
tujuan, yang
terdiri atas
panjangnya nomor tujuan (len),
format
dari
nomor
tujuan
(Type
Number),
dan
nomor
tujuan (Destination Number).
2.10.1.5
Protocol Identifier (PID)
Protocol Identifier (PID) adalah tipe atau format dari cara pengiriman pesan,
yang biasanya diatur dari handphone pengirim. Misalnya tipe Standar Text, Fax, Telex,
X400, dan lain-lain. Nilai default dari PID adalah 00 = Standar Text.
2.10.1.6
Data Coding Scheme (DCS)
Data Coding Scheme (DCS) adalah rencana dari pengkodean data untuk
menentukan kelas dari pesan tersebut apakah berupa SMS atau teks standar, Flash SMS,
atau Blinking SMS. Nilai DCS untuk SMS teks standar adalah 00.
2.10.1.7
Validity Period (VP)
Validity Period (VP) adalah lama waktu pesan SMS disimpan di SMSC apabila
pesan tersebut gagal diterima oleh handphone penerima.
|
![]() 31
Tabel 2.5 Validity Period
Waktu VP
Nilai VP
5 menit 720 menit (12 jam)
(Waktu VP/5) 1
12,5 jam 24 jam
143 + ((Waktu VP 12) * 2)
2 30 hari
166 + Waktu VP
Lebih dari 4 minggu
192 + Waktu VP
2.10.1.8
User Data Length (UDL)
User Data Length (UDL) adalah panjangnya pesan SMS yang akan dikirim
dalam bentuk teks standar.
2.10.1.9
User Data (UD)
User
Data
(UD)
adalah
isi
pesan
yang
akan
dikirim
dalam format
hexadesimal. Pengkodean dari nilai teks standar menjadi hexadesimal dilakukan dengan
bantuan standar Alphabet (Kode ASCII) yang dibakukan oleh ETSI GSM 03.38.
Tabel 2.6 Kode ASCII
Desimal
0
1
2
3
4
5
6
7
8
9
0
1
LF
CR
2
3
SP
!
#
$
%
&
4
(
)
*
+
,
-
.
/
0
1
|
![]() 32
5
2
3
4
5
6
7
8
9
:
;
6
<
=
>
?
@
A
B
C
D
E
7
F
G
H
I
J
K
L
M
N
O
8
P
Q
R
S
T
U
V
W
X
Y
9
Z
[
\
]
^
_
a
b
c
10
d
e
f
g
h
i
j
k
l
m
11
n
o
p
q
r
s
t
u
v
W
12
x
y
z
{
|
}
~
DEL
2.10.2 SMS PDU Penerima (Mobile Terminated)
SMS
PDU
Penerima
adalah
terminal
atau handphone
menerima
pesan
yang
datang atau masuk dari SMSC ke handphone dalam format PDU. Pada prinsipnya pesan
yang
kita
terima
dari SMSC
masih
dalam format
PDU,
setelah
itu
handphone
yang
menerima pesan
akan
melakukan
pengkodean
menjadi
teks. Proses ini
sering disebut
proses decoding.
Cara pengkodean format PDU sudah diatur dan distandarkan oleh ETSI. Format
PDU dari SMS Penerima adalah :
SCA
PDU Type
OA
PID
DCS
SCTS
UDL
UD
Gambar 2.6 Format SMS PDU Penerima
|
![]() 33
2.10.2.1
Service Center Address (SCA)
Service Center Address (SCA) adalah alamat (nomor) dari SMSC. SCA
memiliki tiga komponen utama, yaitu len, type of number, dan service center number.
Tabel 2.7 Service Center Address
Oktet
Keterangan
Len
Panjang informasi SMSC dalam oktet
Type of Number
Format nomor dari SMSC
81 hexa = format lokal
91 hexa = format internasional
Service Center
Number
Nomor SMSC dari operator pengirim. Jika panjangnya ganjil maka
pada karakter terakhir ditambahkan 0F hexa.
Satelindo = 62816124 (PDU = 26181642)
Telkomsel = 6281100000 (PDU = 2618010000)
Exelcom = 62818445009 (PDU = 3+29566500F9)
IM3 = 62855000000 (PDU = 2658050000F0)
2.10.2.2
PDU Type
Nilai
default
dari
PDU
Type
untuk
SMS-DELIVER
adalah
04
hexa,
yang
memiliki arti 04 hexa = 0000100.
|
![]() 34
Tabel 2.8 PDU Type Penerima
Bit No
7
6
5
4
3
2
1
0
Nama
RP
UDHI
SRI
<nn>
<nn>
MMS
MTI
MTI
Nilai
0
0
0
0
0
1
0
0
Keterangan :
RP
: Reply Path. Parameter yang menunjukan bahwa alur jawaban ada.
UDHI
:
User Data Header Indicator. Bit ini bernilai 1 jika data pengirim dimulai
Dengan suatu judul atau tema.
SRI
:
Status Report Indication. Bit ini bernilai 1 jika status laporan akan
dikembalikan ke SME
MMS
:
More Message To Send. Bit ini bernilai 0 jika ada pesan lagi yang akan
dikirim.
MTI
:
Message Type Indicator. Bit bernilai 0 untuk menunjukan bahwa PDU ini
adalah suatu SMS-DELIVER.
2.10.2.3
Originator Address (OA)
Originator Address (OA) adalah alamat
(nomor) dari pengirim, yang terdiri
atas panjangnya nomor pengirim (len), format dari nomor pengirim (Type Number), dan
nomor pengirim (Originator Number).
|
![]() 35
Tabel 2.9 Originator Address
Oktet
Keterangan
Len
Panjang nomor pengirim
Type of
Number
Format nomor dari nomor pengirim
81 hexa = format lokal
91 hexa = format internasional
Originator
Number
Nomor pengirim dari operator pengirim. Jika panjangnya ganjil maka
pada karakter terakhir ditambahkan 0F hexa.
2.10.2.4
Protocol Identifier (PID)
Protocol Identifier (PID) adalah tipe atau format dari cara pengiriman pesan,
yang biasanya diatur dari handphone pengirim. Misalnya tipe Standar Text, Fax, Email,
Telex, X400, dan lain-lain. Nilai default dari PID adalah 00 = Standar Text.
2.10.2.5
Data Coding Scheme (DCS)
Data Coding Scheme (DCS) adalah rencana dari pengkodean data untuk
menentukan kelas dari pesan tersebut apakah berupa SMS teks standar, Flash SMS, atau
Blinking SMS. Nilai DCS untuk SMS teks standar adalah 00.
|
36
2.10.2.6
Service Center Time Stamps (SCTS)
Service
Center
Time
Stamps
(SCTS)
adalah
waktu
dari
penerimaan pesan
oleh
SMSC
penerima.
SCTS
terdiri
atas tahun,
bulan,
tanggal, jam,
menit dan detik,
serta zona waktu.
2.10.2.7
User Data Length (UDL)
User Data Length (UDL) adalah panjang dari pesan yang diterima
dalam
bentuk teks standar.
2.10.2.8
User Data (UD)
User
Data
(UD)
adalah
pesan
yang
diterima
dalam format
hexadesimal.
Pengkodean
dari
nilai
hexadesimal
menjadi teks
standar
dengan
bantuan
tabel
kode
ASCII di atas (Tabel 2.6).
2.11
AT Command
AT
Command
adalah
perintah-perintah
(Command) yang
digunakan
dalam
komunikasi dengan Serial
Port.
Dengan
AT Command kita dapat mengetahui
vendor
dari handphone
yang digunakan,
kekuatan
sinyal,
membaca
pesan
yang
ada
di
SIM
Card,
mengirim pesan,
mendeteksi
pesan
SMS
yang
baru
masuk
secara
otomatis,
menghapus pesan pada SIM Card, dan lain-lain.
Dalam menggunakan
AT Command
ada
beberapa
hal
yang
harus
diperhatikan
yaitu perintah apa yang harus dimasukan ke terminal, tindakan apa yang harus dilakukan
setelah perintah dimasukan, dan
yang
terakhir
mengetahui respons
apa
yang
didapat
|
![]() 37
setelah melakukan tindakan pada perintah yang dimasukan. Tidak semua AT Command
memiliki tindakan dan respon yang sama.
Berikut
ini
cara-cara
menggunakan AT
Command
yang akan
digunakan pada
program SMS Server.
2.11.1 Menentukan Format Mode
Tabel 2.10 Menentukan Format Mode
Masukan
Tindakan
Respons
AT+CMGF=?
Enter
+CMGF: <mode>
Daftar Format yang di
dukung
AT+CMGF=<mode>
Enter
Ok/Error
Keterangan :
<mode>
: Mode dari format terminal
0 = Format mode PDU
1 = Format mode Teks
Ok
: Mendukung format mode yang ditentukan
Error
: Tidak mendukung format mode yang ditentukan
|
![]() 38
2.11.2 Menentukan Jenis Encoding
Tabel 2.11 Menentukan Jenis Encoding
Masukan
Tindakan
Respons
AT+CSCS=?
Enter
+CSCS: <chset>
Daftar encoding yang di
dukung
AT+CSCS=<chset>
Enter
Ok/Error
Keterangan:
<chset>
: Jenis encoding yang digunakan
Ok
: Mendukung jenis encoding yang digunakan
Error
: Tidak mendukung jenis encoding yang digunakan
2.11.3 Membuka Daftar SMS
Tabel 2.12 Membuka Daftar SMS
Masukan
Tindakan
Respons
AT+CMGL=?
Enter
+CMGL: <stat>
Ok
AT+CMGL=<stat>
Enter
Ok
+CMGL:<index>,<stat>,[<alpha>],<length>
<PDU>
OK
|
![]() 39
Keterangan :
<stat>
: Angka yang menunjukan :
0 = Pesan SMS yang belum dibaca pada inbox kartu SIM
1 = Pesan SMS yang sudah dibaca pada inbox kartu SIM
2 = Pesan SMS yang belum terkirim pada outbox karu SIM
3 = Pesan SMS yang telah terkirim pada outbox kartu SIM
4 = Semua pesan SMS yang ada dalam kartu SIM
<index>
: Nomor urut penyimpanan pesan SMS
<length>
: Panjang dari PDU
<PDU>
: Pesan SMS dalam format PDU
OK
: Proses membuka daftar pesan SMS berhasil
Error
: Tidak mendukung <stat> yang digunakan
2.11.4 Mendeteksi Pesan SMS Masuk Secara Otomatis
Tabel 2.13 Mendeteksi Pesan SMS Masuk Secara Otomatis
Masukan
Tindakan
Respons
AT+CNMI=?
Enter
+CNMI:(<mode>),(<mt>),(<bm>),
(<ds>),(<bfr>)
Ok
AT+CNMI=
<mode>,<mt>,<bm>,<ds>,<bfr>
Enter
Ok/Error
Ada SMS baru masuk
+CMTI:<mem>,<index>
|
![]() 40
Keterangan :
<mode>
: 0 = Buffer unsolicited code ke TA.
1 = Membatalkan indikasi dan menolak pesan baru yang masuk
<mt>
: Aturan untuk menyimpan pesan SMS yang masuk tergantung dari data
coding method.
<bm>
: Aturan untuk menyimpan CBMs yang masuk tergantung dari data
coding method.
<ds>
: SMS status report
<bfr>
: Menghapus buffer unsolicetd code di TA
<mem>
: Jenis pesan yang diterima
<index>
: Nomor urut penyimpanan pesan SMS
Ok
: Proses CNMI berhasil
Error
: Proses CMMI gagal
2.11.5 Membaca Pesan SMS
Tabel 2.14 Membaca Pesan SMS
Masukan
Tindakan
Respons
AT+CMGL=<index>
Enter
+CMGR:<stat>,[<alpha>],<length>
<PDU>
Ok
Keterangan :
<stat>
: Angka yang menunjukan :
0 = Pesan SMS yang belum dibaca pada inbox kartu SIM
1 = Pesan SMS yang sudah dibaca pada inbox kartu SIM
|
![]() 41
2 = Pesan SMS yang belum terkirim pada outbox karu SIM
3 = Pesan SMS yang telah terkirim pada outbox kartu SIM
4 = Semua pesan SMS yang ada dalam kartu SIM
<index>
: Nomor urut penyimpanan pesan SMS
<length>
: Panjang dari PDU
<PDU>
: Pesan SMS dalam format PDU
2.11.6 Menghapus Pesan SMS
Tabel 2.15 Menghapus Pesan SMS
Masukan
Tindakan
Respons
AT+CMGD=<index>
Enter
Ok/Error
Keterangan :
<index>
: Nomor urut penyimpanan pesan SMS
Ok
: Proses menghapus pesan SMS berhasil
Error
: Proses menghapus pesan SMS gagal
2.11.7 Mengirim Pesan SMS
Tabel 2.16 Mengirim Pesan SMS
Masukan
Tindakan
Respons
AT+CMGS=lenPDU
Enter
>
00+<IsiPDU>
Ctrl+Z
+CMGS:<mr>
Ok/Error
|
42
Keterangan :
<lenPDU>
: Panjang isi pesan PDU (oktet)
<IsiPDU>
: Isi dari pesan PDU
<mr>
: Acuan pesan
Ok
: Proses mengirim pesan SMS berhasil
Error
: Proses mengirim pesan SMS gagal
2.12
Bahasa Pemprograman C
Bahasa
C
dikembangkan
di
Laboratorium Bell
(USA)
sekitar
tahun
1972,
diciptakan
oleh
Dennis
Ritchie
dan
Brian
Kernighan.
Bahasa C
merupakan
pengembangan
dari
bahasa
B
yang
juga
dikembangkan
di
Laboratorium Bell
(USA)
sekitar tahun 1970, dan secara tidak langsung dari bahasa BCPL yang dibuat oleh Martin
Richards dari MIT dan dibawa ke Cambridge
(Inggris). Bahasa C diciptakan pertama
kali untuk di implementasikan ke sistem operasi UNIX di mesin DEC PDP-11.
C sebagai suatu bahasa pemprograman digolongkan sebagai bahasa tingkat
menengah (medium level language), dimana C mengkombinasikan elemen dalam bahasa
tingkat tinggi dan bahasa tingkat rendah. Tujuannya
adalah untuk
memudahkan dalam
membuat program dan kecepatan eksekusi dari program yang dibuat.
Salah
satu
ciri
bahasa
C
ialah kemampuan memanipulasi
pointer,
karena
diperlukan dalam sistem pemprograman. Ciri
lain
ialah sintaksnya yang
singkat tetapi
sukar dibaca atau cryptic.
|
43
2.13
Bahasa Pemprograman C++
Bahasa C++ diciptakan oleh Bjarne Stroustrup pada awal tahun 1979 di
Laboratorium Bell (USA). Bahasa ini bersifat kompatibel dengan bahasa pendahulunya,
C. Pada
mulanya
C++
disebut
a better C. Nama
C++ sendiri
diberikan oleh
Rick
Mascitti pada musim panas 1983. Adapun tanda ++ berasal dari nama operator penaikan
pada bahasa C.
Bahasa C diambil sebagai landasan dari C++, karena keportabilitasan C yang
memungkinkannya diterapkan
pada berbagai
mesin,
dari PC hingga
mainframe,
serta
berbagai sistem operasi (DOS, UNIX, VMS, dan sebgainya).
Keistimewaan yang sangat berarti pada C++ adalah karena bahasa ini
mendukung pemprograman yang berorientasi objek atau OOP (Object Oriented
Programming).
C++
adalah
bahasa
yang
bersifat hybrid,
bukan
bahasa
murni
yang
berorientasi objek. Pustaka-pustaka yang dibangun dengan C tetap dapat dipakai pada
C++, dibaurkan dengan program berorintasi objek.
Tujuan utama pembuatan C++ adalah
untuk
meningkatkan
produktivitas
pemprograman dalam membuat aplikasi. Terutama pada program yang besar yang terdiri
dari 10.000 baris atau lebih.
2.14
Network Programming
Network
Programming
bertujuan
untuk
membuat
program yang
dapat
saling
berkomunikasi melalui jaringan komputer yang ada. Program
yang melakukan koneksi
disebut Client, dan program yang menunggu koneksi disebut Server.
|
44
Ada beberapa
faktor yang
harus diperhatikan mengenai bagaimana data dikirim
melalui
jaringan,
yaitu jumlah
dari client
dan
server,
tipe
jaringan
yang
digunakan,
kepadatan traffic jaringan, dan beberapa masalah yang ada dalam jaringan.
Hampir
semua
object
yang
ada
di
sistem UNIX
dikenali
sebagai
file,
maka
dikenal adanya file descriptor yang menyediakan interface programming ke file object.
File descriptor dapat digunakan untuk mengirim dan menerima data dari beberapa object
di dalam sistem UNIX.
Akses ke jaringan juga menggunakan file desriptor, yang disebut Socket. UNIX
dan windows network programming
menggunakan socket untuk semua komunikasi
jaringannya. Ada tiga tipe socket yang digunakan, yaitu Stream Socket, Datagram
Socket dan Raw Socket.
2.14.1 Stream Sockets
Stream Socket adalah socket yang menyediakan komunikasi dua arah antara
client
dan
server
yang
terpercaya.
Stream Socket
menggunakan
protokol
TCP
(Transmission
Control
Protocol),
sehingga
sebelum data
dikirimkan
ke tujuan,
harus
terjadi
dulu
koneksi antara
client dan server, sehingga
data
yang
diterima
bebas dari
error.
Jika
terjadi error,
maka error
tersebut akan
dihandle
oleh
layer
ke
4
dari OSI
Layer.
2.14.2 Datagram Sockets
Datagram Socket adalah socket yang menyediakan komunikasi antara client dan
server tanpa perlu membuat koneksi antara client dan server terlebih dahulu. Datagram
|
45
Socket
menggunakan
protokol
UDP
(User
Datagram
Protocol),
sehingga bila terjadi
error pada data yang dikirimkan, maka akan dihandle oleh layer ke 7 dari OSI layer.
2.14.3 Raw Socket
Raw Socket adalah socket yang menyediakan akses ke internal network protokol
dan
interface
dari
kernel,
dimana
data
yang dikirim ditambahkan
header.
Raw
Socket
tidak berada di sisi level bahasa pemprograman, tetapi berada di sisi operating sistem
(Kernel).
2.15
Bahasa Pemprograman Visual Basic
Visual
Basic (VB) adalah
salah satu bahasa
pemprograman komputer. Bahasa
pemprograman adalah perintah-perintah yang dimengerti oleh komputer untuk
melakukan tugas-tugas tertentu. Bahasa pemprograman Visual Basic yang
dikembangkan
oleh
Microsoft
sejak tahun
1991,
merupakan
pengembangan
dari
pendahulunya, yaitu bahasa pemrograman BASIC (Beginners All-purpose Symbolic
Instruction Code) yang dikembangkan pada era 1950-an.
Visual
Basic
merupakan
salah
satu Development
Tool yaitu
alat
bantu
untuk
membuat
berbagai
macam program
komputer,
khususnya
yang
menggunakan
sistem
operasi Windows. Visual basic merupakan salah satu bahasa pemprograman komputer
yang mendukung Object Oriented Programming.
2.16
Object Oriented Analysis & Design (OOAD)
Menurut Larman (2002, p6), analysis menekankan pada penyelidikan atas
masalah dan permintaan ketimbang mencari solusi. Sedangkan desain lebih menekankan
|
46
kepada solusi konseptual yang
memuaskan permintaan user kertimbang
implementasi.
Contohnya, deskripsi tentang skema database dan obyek software.
Menurut Larman (2002, p7), analisis berorientasi obyek menekankan pada
menemukan dan menjelaskan obyek atau konsep dalam suatu lingkup (domain) masalah.
Sedangkan
desain
berorientasi
obyek
menekankan
pada
pendefinisian
obyek
software
dan bagaimana obyek-obyek tersebut bekerja sama untuk memenuhi permintaan user.
2.17
Unified Modelling Language (UML)
Menurut Larman (2002, p10), UML adalah sebuah bahasa untuk
menspesifikasikan, memvisualisasikan,
membangun, dan mendokumentasikan hal-hal
tertentu dalam sistem perangkat lunak, seperti contohnya dalam model bisnis. Di dalam
UML banyak terdapat notasi-notasi dan diagram yang sudah baku untuk membantu
permodelan dalam proses pengembangan sebuah perangkat lunak.
Seperti bahasa-bahasa lainnya, UML mendefinisikan notasi dan syntax/semantik.
Notasi
UML
merupakan
sekumpulan
bentuk khusus untuk menggambarkan berbagai
diagram piranti
lunak.
Setiap
bentuk
memiliki
makna
tertentu,
dan
UML
syntax
mendefinisikan bagaimana bentuk-bentuk tersebut dapat dikombinasikan. Notasi UML
terutama diturunkan dari 3 notasi yang telah ada sebelumnya, yaitu : Grady Booch OOD
(Object-Oriented Design), Jim Rumbaugh OMT (Object Modeling Technique), dan Ivar
Jacobson OOSE (Object-Oriented Software Enginering).
2.17.1 Class Diagram
Menurut Schmuller
(1999,
p8),
kelas
(Class) sendiri diartikan sebagai sebuah
kategori atau grup dari sesuatu yang mempunyai perilaku dan atribut yang sama. Class
|
![]() 47
menggambarkan keadaan (atribut/properti) suatu sistem, sekaligus menawarkan layanan
untuk memanipulasi keadaan tersebut (metode/fungsi).
Class diagram menggambarkan struktur dan deskripsi class, package dan objek
beserta hubungan satu sama lain seperti containment, pewarisan, asosiasi dan lain-lain.
Class memiliki tiga area pokok :
1. Nama (dan Stereotype)
2. Atribut
3. Metoda
Atribut dan metoda dapat memiliki salah satu sifat berikut :
Private, tidak dapat dipanggil dari luar class yang bersangkutan
Protected, hanya dapat dipanggil oleh class
yang bersangkutan dan anak-
anak yang mewarisinya.
Public, dapat dipanggil oleh siapa saja
Gambar 2.7 Class Diagram
Class dapat merupakan implementasi dari sebuah
interface, yaitu class abstrak yang
hanya memiliki metoda. Interface tidak dapat langsung diinstansiasikan, tetapi harus
diimplementasikan
dahulu
menjadi
sebuah
class.
Dengan
demikian interface
mendukung resolusi metoda pada saat run-time.
|
![]() 48
Gambar 2.8 Interface Diagram
Sesuai dengan perkembangan class model, class dapat dikelompokan menjadi package.
Kita juga dapat membuat diagram yang terdiri atas package.
Gambar 2.9 Package Diagram
Hubungan antar class :
1. Asosiasi,
yaitu
hubungan
statis
antar
class.
Umumnya
menggambarkan
class
yang
memiliki
atribut
berupa
class
lain,
atau class
yang
harus
mengetahui
eksistensi class lain. Panah navigability menunjukan arah query antar class.
2. Agregasi, yaitu hubungan yang menyatakan bagian (terdiri atas..).
3. Pewarisan, yaitu hubungan hirarkis antar class. Class dapat diturunkan dari class
lain
dan
mewarisi
semua
atribut
dan
metoda class
asalnya dan
menambahkan
fungsionalitas
baru,
sehigga
ia
disebut
anak
dari class yang
diwarisinya.
Kebalikan dari pewarisan adalah generalisasi.
4.
Hubungan dinamis,
yaitu rangkaian pesan
(message) yang di-passing dari satu
class kepada class lain. Hubungan dinamis dapat digambarkan dengan
menggunakan sequence diagram.
|
49
2.17.2 Use Case Diagram
Use case diagram menggambarkan fungsionalitas yang diharapkan dari sebuah
sistem. Yang ditekankan adalah
apa
yang diperbuat sistem, dan bukan bagaimana.
Sebuah
use
case
merepresentasikan
sebuah
interaksi
antara
aktor
dengan sistem. Use
case merupakan sebuah pekerjaan tertentu, misalnya login ke sistem, meng-create
sebuah daftar belanja, dan sebagainya. Seorang/sebuah aktor adalah sebuah entitas
manusia
atau
mesin
yang
berinteraksi
dengan
sistem untuk
melakukan
pekerjaan-
pekerjaan tertentu.
Use case diagram dapat sangat membantu bila kita sedang menyusun kebutuhan
dari
sebuah
sistem,
menkomunikasikan
rancangan
dengan
klien,
dan
merancang
test
case untuk semua feature yang ada pada sistem.
Sebuah use case dapat meng-include fungsionalitas use case lain sebagai bagian
dari proses dalam dirinya. Secara
umum diasumsikan bahwa use case
yang di-include
akan dipanggil setiap kali use case yang men-include dieksekusi secara normal. Sebuah
use
case
dapat
di-include
oleh
lebih
dari
satu
use
case lain,
sehingga
duplikasi
fungsionalitas dapat dihindari dengan cara menarik keluar fungsionalitas yang sama.
Sebuah use case
juga dapat
meng-extend
use case
lain
dengan
behaviour-nya
sendiri.
Sementara
hubungan
generalisasi antar use
case menunjukan bahwa use
case
yang satu merupakan spesialisasi dari yang lain. Contoh use case diagram :
|
![]() 50
Gambar 2.10 Use Case Diagram
2.17.3 Activity Diagram
Menurut
Schmuller
(1999,
p134),
Activity
diagram berfungsi
menunjukan
langkah-langkah berupa aktivitas sebagai
sebuah keputusan atau alternatif.
Diagram ini
berguna untuk menunjukan apa yang sebenarnya terjadi dalam proses bisnis atau dalam
sebuah operasi.
Activity
diagram
menggambarkan
berbagai
alir
aktivitas
dalam sistem yang
sedang
dirancang,
bagaimana
masing-masing alrr
berawal,
keputusan
yang
mungkin
terjadi,
dan
bagaimana
mereka
berakhir.
Activity
diagram juga
dapat
meggambarkan
proses pararel yang mungkin terjadi pada beberapa eksekusi.
Activity diagram merupakan state diagram khusus, dimana sebagian besar
state
adalah action
dan sebagian besar transisi di-trigger oleh selesainya state sebelumnya
(internal processing). Oleh karen
itu activity diagram tidak menggambarkan behaviour
internal
sebuah
sistem (dan
interaksi
antar
subsistem)
secara
eksak,
tetapi
lebih
menggambarkan proses-proses dan jalur-jalur aktivitas dan level atas secara umum.
|
![]() 51
Sebuah
aktivitas
dapat
direalisasikan
oleh
satu use
case
atau
lebih.
Aktivitas
menggambarkan proses yang berjalan, sementara use case menggambarkan bagaimana
aktor menggunakan sistem untuk melakukan aktivitas.
Gambar 2.11 Activity Diagram
2.17.4 Sequence Diagram
Menurut
Schmuller
(1999,
p104),
diagram urutan
adalah
diagram yang
menunjukan bagaimana sebuah object berinteraksi dengan object yang lain. Dalam sudut
pandang ini, urutan waktu dinyatakan dalam setiap hubungan antar object yang ditandai
dengan awal dan akhir. Urutan waktu ini yang kemudian disebut diagram urutan.
|
![]() 52
Sequence
diagram biasa
digunakan
untuk
menggambarkan
skenario
atau
rangkaian
langkah-langkah
yang
dilakukan
sebagai respons
dari
sebuah
event
untuk
menghasilkan output tertentu. Diawali dari apa yang men-trigger aktivitas tersebut,
proses dan perubahan apa saja yang terjasi secara internal dan output apa yang
dihasilkan.
Masing-masing
objek, termasuk
aktor,
memiliki lifeline vertikal.
Message
digambarkan sebagai
garis berpanah dari
satu objek ke objek lainnya. Pada
fase desain
berikutnya, message akan dipetakan
menjadi operasi/metoda dari class. Activation bar
menunjukan lamanya eksekusi sebuah proses, biasanya diawali dengan diterimanya
sebuah message. Untuk objek-objek yang memiliki sifar khusus, standar UML
mendefinisikan icon khusus untuk objeck boundary, controller dan persistent entity.
Gambar 2.12 Sequence Diagram
|
![]() 53
2.17.5 Deployment Diagram
Deployment/physical diagram menggambarkan
detail bagaimana komponen di-
deploy dalam infrastruktur sistem, di mana komponen akan terletak (pada mesin, server
atau piranti keras apa), bagaimana kemampuan jaringan pada lokasi tersebut, spesifikasi
sever, dan hal-hal lain yang bersifat fiskal.
Sebuah node adalah server, workstation, atau piranti keras lain yan g
digunakan
untuk
mendeploy
komponen
dalam
lingkungan sebenarnya. Hubungan antar node
(misalnya TCP/IP) dan kebutuhan dapat juga didefinisikan dalam diagr am ini.
Gambar 2.13 Deployment Diagram Dan Component Diagram
|