7 BAB II LANDASAN TEORI Pada bab ini dibahas konsep dasar

advertisement
BAB II
LANDASAN TEORI
Pada bab ini dibahas konsep dasar yang berhubungan dengan VoIP,
jaringan komputer, jalur komunikasi Voip, Quality of Service, Denial of Service
dan Network Simulator 2.
2.1 Voice Over Internet Protokol
Voice over Internet Protocol atau disingkat VoIP, dikenal juga dengan
sebutan IP Telephony. VoIP didefinisikan sebagai suatu sistem yang
menggunakan jaringan internet untuk mengirimkan data paket suara dari suatu
tempat ke tempat yang lain menggunakan protokol IP. Sehingga perbedaan VoIP
dengan telepon tradisional adalah masalah infrastrukturnya, jika VoIP
menggunakan Internet sedangkan telepon tradisional menggunakan infrastruktur
telepon yang sudah dibangun lebih awal (Winarno Sugeng 2008:1).
Jika dilihat dari perkembangan teknologi komunikasi data, teknologi
komunikasi data sudah semakin andal kualitas media transmisinya. Dalam hal ini,
tipe media transmisi sangatlah penting untuk menentukan awal terbentuknya suatu
komunikasi, karena mempengaruhi jumlah maksimum bit (binary bit) yang dapat
ditransmisikan (bps). Berbagai media transmisi yang saat ini digunakan, antara
lain :
a. Two wire open line, jenis media transmisi yang paling sederhana, yang masingmasing wire diinsulasi dari wire lainnya, dan semua berada dalam keadaan
terbuka. Jarak antara komunikasi media ini sampai 50 meter dengan
menggunakan modem dengan bit rate lebih kecil dari 19,2 kbps.
b. Twisted-pair cable atau kabel pasangan berpilin terdiri dari dua buah
konduktor yang digabungkan dengan tujuan untuk mengurangi atau
meniadakan
interferensi
elektromagnetik
dari
luar
seperti
radiasi
elektromagnetik dari kabel Unshielded twisted-pair (UPT), dan crosstalk yang
terjadi di antara kabel yang berdekatan. Tepat dipakai untuk jarak 100 meter
7
8
dengan bit rate sampai 1 Mbps (Dede Sopandi 2010:20). Twisted pair terdiri
dari dua jenis yaitu :
1) Kabel STP (Shielded Twisted Pair)
Keuntungan menggunakan kabel STP adalah lebih tahan terhadap
interferensi gelombang elektromagnetik baik dari dari dalam maupun dari
luar. Kekurangannya adalah mahal, susah pada saat instalasi (terutama
masalah grounding), dan jarak jangkauannya hanya 100 meter .
2) Kabel UTP (Unshielded Twisted Pair)
Keuntungan menggunakan kabel UTP adalah murah dan mudah
diinstalasi. Kekurangannya adalah rentan terhadap interferensi gelombang
elektromagnetik, dan jarak jangkauannya hanya 100 meter.
c. Coaxial cable, kabel koaksial ini dapat digunakan hingga 1 km dan dapat
dilewati sampai 10 Mbps. Jika dikehendaki jarak yang lebih jauh maka tehnik
modulasi yang baik.
d. Fiber optic, kabel serat optik berbeda dengan jenis media transmisi yang telah
disebutkan sebelumnya. Sistem transmisi yang digunakan menggunakan teknik
beam of light atau bentuk percikan cahaya pada serat kacanya. Dengan cara ini,
bit rate transmisi dapat mencapai ratusan Mbps.
e. Wireless Network, Saat ini sudah banyak digunakan jaringan tanpa kabel
(wireless network), transmisi data menggunakan sinar infra merah atau
gelombang mikro untuk menghantarkan data. Walaupun kedengarannya
praktis, namun kendala yang dihadapi disini adalah masalah jarak, bandwidth,
dan mahalnya biaya. Namun demikian untuk kebutuhan LAN di dalam gedung,
saat ini sudah dikembangkan teknologi wireless untuk Active Hub (Wireless
Access Point) dan Wireless LAN Card (pengganti NIC), sehingga bisa
mengurangi semrawutnya kabel transmisi data pada jaringan komputer.
Wireless Access Point juga bisa digabungkan (up-link) dengan ActiveHub dari
jaringan yang sudah ada. Media transmisi wireless menggunakan gelombang
radio frekuensi tinggi. Biasanya gelombang elektromagnetik dengan frekuensi
2.4 Ghz dan 5 Ghz. Data-data digital yang dikirim melalui wireless ini akan
dimodulasikan ke dalam gelombang elektromagnetik ini.
9
Voice over Internet Protocol (VoIP) melewatkan trafik suara, video dan data
yang berbentuk paket melalui jaringan IP. jaringan IP adalah jaringan komunikasi
data yang berbasis packet switch. Trafik VoIP dibagi menjadi dua bagian
transmisi jaringan yaitu transmisi untuk signaling dan untuk RTP (Realtime
Transfer Protocol). Protokol yang digunakan unuk signaling selalu berbasis TCP
(Transfer Control Protocol) sedang untuk RTP yang digunakan adalah protokol
berbasis UDP (User Datagram Protocol). Signaling dilakukan diantara port TCP
yang sudah umum diketahui, misalkan untuk H323 menggunakan port 1720, SIP
(Session Initiation Protocol) menggunakan port 5060, IAX (Inter Asterisk
Exchange) menggunakan port 4569. Seluruh paket dirutekan tanpa jaminan bahwa
paket tersebut akan melewati jalur yang sama. Selama transmisi, paket-paket
tersebut kemungkinan mengalami delay, lost, maupun error. Setelah paket-paket
ditransmisikan dan tiba di tujuan, paket-paket tersebut disatukan kembali dan di
dekompresi untuk membentuk ke bentuk aslinya.
Kualitas suara VoIP dipengaruhi oleh beberapa parameter yaitu kapasitas
bandwidth, packet loss dan delay yang terjadi di dalam jaringan. Kapasitas
bandwidth adalah ketersediaan sumber daya jaringan dalam bentuk lebar pita yang
digunakan untuk mentransmisikan data paket. Packet loss adalah parameter yang
menyatakan besarnya laju kesalahan yang terjadi sepanjang jalur pengiriman data
paket dari pengirim ke penerima. Delay adalah parameter yang menyatakan
rentang waktu yang diperlukan untuk mengirimkan paket dari pengirim ke
penerima.
Pada perkembangannya, sistem koneksi VoIP mengalami evolusi. Bentuk
peralatan pun berkembang, tidak hanya berbentuk komputer yang saling
berhubungan, tetapi peralatan lain seperti pesawat telepon biasa terhubung dengan
jaringan VoIP. Jaringan data digital dengan gateway untuk VoIP memungkinkan
berhubungan dengan PABX atau jaringan analog telepon biasa. Komunikasi
antara komputer dengan pesawat (extension) di kantor adalah memungkinkan.
Dalam bentuk yang lebih lanjut komunikasi ini lebih dikenal dengan IP Telephony
yang merupakan komunikasi bentuk multimedia sebagai kelanjutan bentuk
komunkasi suara (VoIP). Keluwesan dari VoIP dalam bentuk jaringan, peralatan
10
dan media komunikasinya membuat VoIP menjadi cepat popular di masyarakat
umum.
Gambar 2.1 dibawah ini menjelaskan tentang gambaran umum dari teknologi
VoIP.
Gambar 2.1 Teknologi VoIP
2.1.1 Keuntungan dan Kelemahan dari VOIP
Secara umum, pemakaian VoIP memiliki beberapa keuntungan seperti
dengan adanya penghematan biaya untuk menelpon (khususnya untuk jarak jauh
seperti SLI dan SLJJ). Namun beberapa kerugian yang dimiliki VoIP pun
sebaiknya juga ikut diperhitungkan. Berikut merupakan keuntungan dan
kelemahan dari VoIP.
1.
Keuntungan VoIP
a. Biaya lebih rendah untuk sambungan langsung jarak jauh. Penekanan
utama dari VoIP adalah biaya. Dengan dua lokasi yang terhubung dengan
internet maka biaya percakapan menjadi sangat rendah.
b. Memanfaatkan infrastruktur jaringan data yang sudah ada untuk suara.
Berguna jika perusahaan sudah mempunyai jaringan. Jika memungkinkan
jaringan yang ada bisa dibangun jaringan VoIP dengan mudah. Tidak
diperlukan tambahan biaya bulanan untuk penambahan komunikasi suara.
c. Penggunaan bandwidth yang lebih kecil daripada telepon biasa. Dengan
majunya teknologi penggunaan bandwidth untuk voice sekarang ini
11
menjadi sangat kecil. Teknik pemampatan data memungkinkan suara
hanya membutuhkan sekitar 8 kbps bandwidth.
d. Memungkinkan digabung dengan jaringan telepon lokal yang sudah ada.
Dengan adanya gateway bentuk jaringan VoIP bisa disambungkan dengan
PABX yang ada dikantor. Komunikasi antar kantor bisa menggunakan
pesawat telepon biasa.
e. Berbagai bentuk jaringan VoIP bisa digabungkan menjadi jaringan yang
besar. Contoh di Indonesia adalah VoIP Rakyat.
f. Variasi penggunaan peralatan yang ada, misal dari PC sambung ke telepon
biasa, IP phone handset.
2.
Kelemahan dari VoIP
a. Kualitas suara tidak sejernih PSTN. Merupakan efek dari kompresi suara
dengan bandwidth kecil maka akan ada penurunan kualitas suara. Namun
jika koneksi internet yang digunakan adalah koneksi internet pita – lebar /
broadband, maka kualitas suara akan lebih jernih.
b. Ada jeda dalam berkomunikasi. Proses perubahan data menjadi suara,
membuat adanya jeda dalam komunikasi dengan menggunakan VoIP.
Kecuali jika menggunakan koneksi broadband.
c. Jika memakai internet dan komputer dibelakang NAT (Network Address
Translation), maka dibutuhkan konfigurasi khusus untuk membuat VoIP
tersebut berjalan.
d. Belum ada jaminan kualitas jika VoIP melewati internet.
e. Peralatan relatif mahal. Peralatan VoIP yang menghubungkan antara VoIP
dengan PABX (IP telephony gateway) relatif berharga mahal.
f. Berpotensi menyebabkan jaringan terhambat jika pemakaian VoIP
semakin banyak, maka ada potensi jaringan data yang ada menjadi penuh
jika tidak diatur dengan baik. Pengaturan bandwidth adalah perlu agar
jaringan di perusahaan tidak menjadi jenuh akibat pemakaian VoIP
(Rachmat Rafiudin 2006:5).
12
2.1.2 Unsur pembentukan VoIP
Dalam pembentukan jaringan VoIP terdapat beberapa unsur diantaranya
adalah :
1.
User Agent
User agent ada yang berupa software ada pula yang berupa hardware.
User agent seperti layaknya telepon yang kita kenal yang berfungsi untuk
melakukan pemanggilan atau menerima telepon, baik berasal dari sambungan
komputer dengan komputer, komputer dengan IP phone, komputer dengan
PTSN (perlu ditambah alat ATA). User agent berupa software lebih poluler,
hal ini dikarenakan banyak software user agent yang dapat diperoleh secara
gratis. Beberapa jenis softphone SIP, misalnya Sjphone dan x-lite.
Sjphone
X-Lite
Gambar 2.2 contoh softphone SIP
Beberapa jenis hardware yang popular sebagai user agent :
a. IP Phone, dengan bentuk seperti telepon biasa pada umunya. Cara
penyambungannya dengan koneksi ke jaringan komputer yang telah
memiliki fasilitas VoIP.
b. USB Phone, bentuknya seperti telepon selular. Koneksi yang digunakan
melalui USB port komputer.
c. Internet Telephony Gateway (ITG), adalah user agent VoIP yang memiliki
dua jenis port, yaitu port FXS (terhubung ke telepon biasa) dan FXO
(terhubung ke PTSN langsung atau bisa juga melalui PABX).
13
d. Analog Telephone Adapter (ATA), ini merupakan alat yang digunakan
agar telephone rumah dapat digunakan menjadi user agent VoIP. Alat ini
sama dngan ITG namun hanya memiliki satu port, yaitu FXS.
2.
Proxy
Karena VoIP akan dijalankan di internet maka perlu dibentuk jembatan
penghubung, jembatan tersebut biasa disebut proxy, seperti halnya proxyproxy server pada umumnya, tetapi ini khusus untuk kebutuhan VoIP. Untuk
mengoprasikan proxy dibutuhkan softswitch. Untuk proxy softswitch open
source dan cukup terkenal dan telah teruji keandalannya adalah asterisk,
selain itu ada juga OpenSER, SER, Yate. Untuk softswitch yang proprietary
(non-open source) dapat diperoleh di website Axon atau ada pula OnDo SIP
Server.
3.
Protokol
Protokol merupakan sebuah aturan atau rule yang harus dipenuhi agar
akses komunikasi dalam hal ini komunikasi VoIP dapat melewati jaringan
internet. Secara umum, terdapat dua teknologi yang digunakan untuk VoIP,
yaitu H.323 dan SIP. H323 merupakan teknologi yang dikembangkan oleh
ITU (International Telecommunication Union). SIP (Session Initiation
Protocol) merupakan teknologi yang dikembangkan IETF (Internet
Enggineering Task Force).
a.
TCP/IP
TCP atau “Transmision Control Protocol” adalah suatu protokol atau
perantara yang dapat mentransmisikan data per segmen, artinya paket data
dipecah dalam jumlah yang sesuai dengan besaran paket, kemudian dikirim
satu persatu hingga selesai.
Sedangankan “Internet Protocol” (IP) adalah protokol yang mengatur
Routing dan pentransmisian melewati jaringan antara pengirim dan penerima,
termasuk juga isu yang berkaitan dengan pengalamatan jaringan dan
komputer, sehingga dapat dikatakan bahwa IP (Internet Protocol) merupakan
perantara komunikasi antar komputer dengan menggunkan IP-Address
14
sebagai suatu identitas dari jaringan maupun komputer (Oscar Rachman Gin
Gin Yugianto 2008:34).
Gambar 2.3 TCP/IP model
b.
Application layer
Fungsi utama lapisan ini adalah pemindahan file. Perpindahan file dari
sebuah sistem ke sistem lainnya yang berbeda memerlukan suatu sistem
pengendalian untuk menangatasi adanya ketidak-kompatibelan sistem file
yang berbeda - beda. Protokol ini berhubungan dengan aplikasi. Salah satu
contoh aplikasi yang telah dikenal misalnya HTTP (Hypertext Transfer
Protocol) untuk web, FTP (File Transfer Protocol) untuk perpindahan file,
dan TELNET untuk terminal maya jarak jauh.
c.
TCP
TCP (Transmission Control Protocol) adalah salah satu jenis protocol
transfer data. TCP merupakan bagian dari protokol TCP/IP yang digunakan
bersama dengan IP untuk mengirim data dalam bentuk unit pesan antara
komputer ke internet (Madcoms 2009:87). TCP mempunyai karakteristik
sebagai protokol yang berorientasi koneksi (Connection oriented). Sebelum
terjadi proses transfer data, maka yang pertama dilakukan adalah kedua belah
pihak melakukan call request dan call accept. Protokol TCP menggunakan
jalur data full duplex yang berarti antara kedua host terdapat dua buah jalur,
jalur masuk dan jalur keluar sehingga data dapat dikirimkan secara simultan.
15
Sebuah circuit virtual disiapkan sebelum paket – paket dikirimkan. Pada
masing – masing paket terdapat virtual circuit identifier yang berisi alamat
tujuan packet tersebut. Data yang dikirimkan dalam sebuah protokol TCP
maka akan diurutkan dengan sebuah nomor urut dan akan mengharap packet
positive acknowledgment. Apabila tidak ada packet positive acknowledgment,
maka paket akan dikirim ulang. Oleh karena itu, protokol TCP reliable.
Gambar 2.4 Konsep dasar TCP
Akan tetapi karena harus mengecek setiap paket yang dikirimkan, maka
protokol TCP relatif lambat. Pada TCP, hanya bisa melakukan koneksi oneto-one dan tidak bisa melakukan koneksi one-to-many. Karena rute-rute paket
sudah ditentukan sebelumnya, maka akan lebih sulit bagi jaringan untuk
beradaptasi dengan kemacetan. Apabila sebuah node mengalami kerusakan
atau kegagalan, maka seluruh virtual circuit yang melewati simpul tersebut
akan hilang.
d.
UDP
UDP (User Datagram Protocol) adalah jenis transfer data yang lain dari
TCP. UDP mempunyai karateristik connectionless. UDP menawarkan suatu
paket layanan datagram tanpa yang mengirim menjamin pengiriman atau
pengurutan paket-paket yang dikirimkan secara benar (Madcoms 2009:88).
Sehingga sangat besar sekali kemungkinan data sampai tidak berurutan dan
sangat mungkin hilang/rusak dalam perjalananan dari host asal ke host tujuan.
Tergantung pada host penerima/tujuan, apakah akan meminta kembali paket
yang rusak atau hilang.
Kelebihan UDP adalah pada saat digunakan pada lightweight protokol,
misalnya saja DNS (Domain Name Service). Selain itu protokol UDP lebih
16
fleksibel karena apabila terjadi kemacetan pada salah satu bagian jaringan,
maka datagram dapat dialihkan menghindari bagian yang mengalami
kemacetan tersebut. Kemudian apabila sebuah simpul node mengalami
kerusakan/kegagalan, maka paket-paket berikutnya dapat menemukan jalan
atau rute pengganti yang melewati simpul tersebut.
Gambar 2.5 Konsep dasar UDP
e.
RTP
RTP (Real Time Protocol) merupakan protocol yang dibuat untuk
memesan bagian dari bandwidth yang tersedia untuk lalulintas UDP, RTP
mengkompensasi jitter dan desequencing yang terjadi pada jaringan IP. RTP
tidak dikembangkan semata-mata untuk lalulintas data suara akan tetapi juga
digunakan untuk lalu lintas data video karena sifatnya yang menjaga atau
mendukung bandwidth yang akan digunakan oleh lalulintas UDP.
Frame Header RTP berisi informasi-informasi untuk mengidentifikasi
dan mengatur tiap panggilaan individu dari endpoint ke endpoint. Informasiinformasi ini adalah timestamp, sequence number, dan conversation
synchronization. RTP merupakan protocol yang dibuat untuk memesan
bagian dari bandwidth yang tersedia untuk lalu lintas UDP. Tiap – tiap paket
RTP berisi potongan paket dari percakapan suara. Besarnya ukuran paket
suara bergantung pada codec yang digunakan.
RTP didesain untuk digunakan pada tansport layer, namun demikian
RTP digunakan diatas UDP, bukan pada TCP karena TCP tidak dapat
beradaptasi pada pengiriman data yang real-time dengan keterlambatan yang
relatif kecil seperti pada pengiriman data komunikasi suara. Dengan
menggunakan UDP yang dapat mengirimkan paket IP secara multicast, RTP
stream yang di bentuk oleh satu terminal dapat dikirimkan ke beberapa
17
terminal tujuan. Selain itu , oleh karena informasi RTP dienkapsulasi dalam
packet UDP. Jika packet RTP hilang (lost) atau drop di jaringan, maka RTP
tidak akan melakukan retransmission (sesuai standard protocol UDP). Hal ini
dilakukan agar user tidak terlalu lama menunggu (long pause) atau delay,
dikarenakan permintaan retransmission. Oleh karena itu jaringan harus
didesign sebaik mungkin agar packet loss tidak terjadi.
f.
H.323
H.323
adalah
rekomendasi
yang dikeluarkan
oleh
Intenational
Telecommunication Union (ITU) yang mendifinisikan protocol untuk
menyediakan audio visual sesi komunikasi pada setiap jaringan multimedia
berbasis paket, khususnya VoIP. H.323 merupakan suite yang terdiri dari
berbagai protokol, yang masing-masing distandarkan secara terpisah oleh
ITU dan IETF. Banyak dari protokol di dalam H.323 diterbitkan sebelum
skema VoIP sendiri dikenal (Winarno Sugeng 2008:12).
Standar H.323 mengatur hal-hal sebagai berikut :
1) Video Codec (H.261 dan H.263). Video Codec bertugas mengkodekan
data dari sumber video untuk dikirimkan dan mendekodekan sinyal kode
yang diterima untuk di tampilkan di layar penerima.
2) Audio Codec (G.711, G.722, G723, G728 dan G.729). Audio codec
betugas mengkodekan data dari sumber suara untuk dikirimkan dan
mendekodekan sinyal kode yang diterima untuk didengarkan oleh
penerima.
3) Data channel mendukung aplikasi-aplikasi seperti electronic whiteboard,
dan kolaborasi aplikasi. Standar untuk aplikasi-aplikasi seperti ini adalah
standar T.120 . Aplikasi dan protokol yang berbeda tetap dapat
dijalankan dengan negosiasi menggunakan standar H.245.
4) Sistem control unit (H.245 dan H.225.0) menyediakan signalling yang
berkaitan dengan komunikasi antar terminal H.323.
5) H.225.0 layer memformat data video, suara, data , dan informasi kontrol
lain sehingga dapat dikirimkan melalui LAN Interface sekaligus
menerima data yang telah diformat melalui LAN Interface. Sebagai
18
tambahan, layer ini juga bertugas melakukan error detection, error
correction , dan frame sequencing agar data dapat mencapai tujuan sesuai
denagn kondisi saat data dikirimkan. LAN interface harus menyediakan
koneksi yang handal. Untuk flow control dan unreliable data channel
connection (misal: UDP) dapat digunakan untuk pengiriman audio dan
video channel.
g.
SIP (Session Innitiation Protocol)
SIP adalah suatu signalling protocol pada layer aplikasi yang berfungsi
untuk membangun, memodifikasi, dan mengakhiri suatu sesi multimedia
yang melibatkan satu atau beberapa pengguna. Sesi multimedia adalah
pertukaran data antar pengguna yang bisa meliputi suara, video, dan text. SIP
tidak menyediakan layanan secara langsung , tetapi menyediakan pondasi
yangdapat digunakan oleh protokol aplikasi lainnya untuk memberikan
layanan yang lebih lengkap bagi pengguna, misalnya dengan RTP (Real Time
Transport Protocol) untuk transfer data secara real-time, dengan SDP
(Session Description Protocol) untuk mendiskripsikan sesi multimedia ,
dengan MEGACO (Media Gateway Control Protocol) untuk komunikasi
dengan PSTN (Public Switch Telephone Network) (Winarno Sugeng
2008:13).
Meskipun demikian, fungsi dan operasi dasar SIP tidak tergantung pada
protocol tersebut. SIP juga tidak tergantung pada protokol layer transport
yang digunakan. Pembangunan suatu komunikasi multimedia dengan SIP
dilakukan melalui beberapa tahap :
1) User
Location
adalah
menentukan lokasi
pengguna
yang akan
berkomunikasi.
2) User Availability adalah menentukan tingkat keinginan pihak yang
dipanggil untuk terlibat dalam komunikasi.
3) User Capability adalah menentukan media maupun parameter yang
berhubungan dengan media yang digunakan untuk komunikasi.
4) Session
Setup
adalah
pembentukan
pemanggildengan pihak yang dipanggil.
hubungan
antara
pihak
19
5) Session management yaitu meliputi transfer, modifikasi, dan pemutusan
sesi. Secara garis besar SIP merupakan protokol yang digunakan dalam
untuk membangun, memodifikasi, dan mengakhiri suatu sesi. Penggunaan
protokol codec video , audio dan Real-time Protocol dengan H.323 tetap
sama, hanya berbeda dalam sesi signalling sambungan VoIP.
h.
IAX (The Inter-Asterix Exchange)
IAX merupakan protokol dari asterisk. Sekarang ini dengan dimotori di
Indonesia melaui VoIP rakyat dimasyarakatkan protokol IAX2, untuk
user agent, software Idefiks menggunakan IAX2.
4.
VoIP Server
VoIP Server adalah bagian utama dalam jaringan VoIP. Perangkat ini
memang tidak wajib ada di jaringan VoIP, tetapi sangat dibutuhkan untuk dapat
menghubungkan banyak titik komunikasi server. Perangkat ini dapat digunakan
untuk mendefinisikan jalur dan aturan antar terminal. Selain itu VoIP server juga
bisa menyediakan layanan-layanan yang biasa ada di perangkat PBX (Private
Branch Exchange), voice mail, Interactive Voice Response (IVR), dan lain-lain.
Beberapa jenis SoftSwitch juga menyediakan fasilitas tambahan untuk dapat
berkomunikasi dengan SoftSwitch lain di internet. Ada beberapa SoftSwitch yang
dapat anda pilih untuk membangun jaringan VoIP sendiri, semuanya memiliki
lisensi gratis. Contoh dari VoIP server ini adalah Asterisk.
5.
Coder-decoder (Codec)
Codec adalah suatu hardware atau software yang dapat melakukan sampling
terhadap signal suara analog, kemudian mengkonversi ke dalam bit-bit digital dan
mengembalikannya lagi ke bentuk analog. Codec sendiri merupakan kepanjangan
dari compressor – decompressor atau lebih dikenal coder – encoder. Beberapa
jenis codec melakukan kompresi agar dapat menghemat bandwidth.
Istilah codec (compressor-decompressor) dan vocoder biasanya dapat saling
dipertukarkan satu sama lain dan umunya mengacu kepada alat dalam VoIP
20
Phone atau gateway yang memerlukan proses digitalisasi (Onno W. Purbo
2007:261).
Codec yang digunakan untuk aplikasi VoIP merupakan speech encoding,
yaitu kompresi data audio digital yang mengandung speech (pembicaraan).
Speech encoding sendiri termasuk jenis audio codec pada kategori lossy data
compression artinya ketika data yang terkompresi itu di-dekompresi akan sedikit
berbeda dengan data asli tapi masih dianggap cukup merepresentasikan.
Untuk VoIP, banyak jenis speech encoding yang dapat dipakai, antara lain
yang distandarisasi oleh ITU seperti G.711, G.722, G.723, G.726, G.728, dan
G.729. Sedangkan yang non ITU seperti GSM, Speex dan iLBC. Berbagai jenis
codec ini memiliki bit rate dan kualitas yang berbeda satu sama lain. Besar
kecilnya bit rate ini akan mempengaruhi kerja prosesor. Semakin kecilnya bit rate
maka kerja prosesor akan semakin berat, dan sebaliknya. Namun nilai bit rate
yang kecil dibutuhkan untuk menghemat konsumsi bandwidth.
Pada tabel 2.1 dibawah ini, terdapat beberapa jenis codec yang digunakan
secara umum, bersama dengan bit rate.
Tabel 2.1 Jenis codec pada VoIP
Nama Codec
Bit Rate
GSM
13 Kbps
Speex
2.15 – 44.2 Kbps
iLBC
15 Kbps
G.711
64 Kbps
G.722
48/56/64 Kbps
G.723
5.3/6.3 Kbps
G.726
16/24/32/40 Kbps
G.728
16 Kbps
G.729
8 Kbps
1) G.711
G.711 merupakan codec yang dikeluarkan ITU untuk digunakan dalam
telepon digital seperti ISDN. Codec ini menggunakan teknik kompresi PCM
21
(Pulse Code Modulation) dalam pengiriman suara dan memiliki bit rate yang
tinggi yaitu 64 Kbps, dengan kecepatan sampling 8.000 sampel per detik dan
8 bit untuk setiap sampel. G.711 memiliki payload 160 byte dan waktu untuk
satu frame adalah 20 ms. Sedangkan ukuran header totalnya adalah 40 byte
yang berasal 20 byte header IP, 12 byte header UDP dan 8 byte header RTP.
Codec ini digunakan secara bebas pada aplikasi VoIP karena tidak ada
biaya lisensi dan paling baik digunakan pada jaringan lokal yang memiliki
bandwidth cukup besar. Keuntungan lain dari penggunaan codec ini adalah
implementasi yang sederhana sehingga tidak memerlukan daya CPU yang
terlalu besar.
2) GSM
GSM adalah jenis codec yang memiliki kecepatan penuh atau disebut full
rate (FR) yang dikeluarkan oleh ETSI. Standar ini mendefinisikan sebuah
referansi
konfigurasi
untuk
rantai
transmisi
suara
terutama
pada
telekomunikasi digital selular. Input bagi encoder suara ini adalah sinyal
PCM 13 bit uniform. Codec ini merupakan speech encoding yang didasarkan
pada algoritma RPE – LTP (Regular Pulse Excitation – Long Term
Prediction). GSM memiliki bit rate sebesar 13 Kbps dengan 160 sample rate
8 KHz. Encoder memproses blok suara sebesar 20 ms yang tiap blok berisi
260 bit sehingga dihasilkan kecepatan 13 Kbps (260 bits/20ms = 13.000 bits/s
=
13
Kbits/s),
walaupun
dalam
kondisi
sebenarnya
GSM
akan
mentransmisikan bit rate yang lebih tinggi akibat adanya error recovery dan
packet information. Dan memiliki ukuran payload 33 byte dengan ukuran
header 40 byte.
2.2 Jaringan Komputer
Agar VoIP berjalan dengan lancar maka dibutuhkan media untuk dapat
berkomunikasi di jalur VoIP ini, yaitu dengan adanya jaringan komputer dimana
memiliki pengertian sebuah sistem yang terdiri atas komputer dan perangkat
jaringan yang bekerja bersama – sama untuk mencapai suatu tujuan yang sama.
22
Agar dapat mencapai tujuan yang sama, setiap bagian dari komputer meminta dan
memberikan layanan (service). Pihak yang meminta layanan disebut client (client)
dan yang memberikan layanan disebut pelayan (server). Arsitektur ini disebut
dengan sistem client-server, dan digunakan pada hampir seluruh aplikasi jaringan
komputer.
Klasifikasi Berdasarkan skala :
a. Personal Area Network (PAN)
b. Campus Area Network (CAN)
c. Local Area Network (LAN)
d. Metropolitant Area Network (MAN)
e. Wide Area Network (WAN)
f. Global Area Network (GAN)
2.3 Quality of Service (QoS)
Quality
of
Service
(QoS)
merupakan
mekanisme
jaringan
yang
memungkinkan aplikasi-aplikasi atau layanan dapat beroperasi sesuai dengan
yang diharapkan. Kinerja jaringan komputer dapat bervariasi akibat beberapa
masalah, seperti halnya masalah bandwidth, latency dan jitter, yang dapat
membuat efek yang cukup besar bagi banyak aplikasi. Sebagai contoh,
komunikasi suara (seperti VoIP atau IP Telephony) serta video streaming dapat
membuat pengguna frustrasi ketika paket data aplikasi tersebut dialirkan di atas
jaringan dengan bandwidth yang tidak cukup, dengan latency yang tidak dapat
diprediksi, atau jitter yang berlebih. Fitur QoS ini dapat menjadikan bandwidth,
latency, dan jitter dapat diprediksi dan dicocokkan dengan kebutuhan aplikasi
yang digunakan di dalam jaringan yang ada.
Di bidang telepon, kualitas layanan yang ditetapkan dalam standar ITU
sebagai "Sekumpulan persyaratan mutu pada perilaku kolektif dari satu atau lebih
objek". Kualitas layanan terdiri dari persyaratan pada semua aspek sambungan,
seperti layanan tanggapan waktu, kehilangan, rasio sinyal-kebisingan, crosstalk,
echo, interrupts, respon frekuensi, tingkat kenyaringan, dan seterusnya.
23
QoS dapat dilihat secara subjektif dan objektif. Secara subjektif, tingkat
kualitas dari suatu layanan diukur berdasarkan subjektifitas masing – masing
pengguna. Setiap pengguna dapat memberikan nilai yang berbeda untuk suatu
aplikasi yang sama. Metode pengukuran QoS secara subjektif ini umumnya
dilakukan dengan menggunakan nilai Mean Opinion Score (MOS), dimana
dilakukan uji coba langsung suatu layanan VoIP oleh beberapa pengguna, yang
kemudian akan memberikan penilaian terhadap kualitas VoIP tersebut. Range
nilai yang diberikan adalah 1 sampai 5. Nilai 1 untuk kualitas yang terburuk
sedangkan 5 untuk kualitas yang terbaik seperti yang ada pada Tabel 2.2.
Tabel 2.2 Nilai Kualitas MOS
Nilai
Kualitas Suara
1
Buruk
2
Kurang
3
Cukup
4
Baik
5
Baik Sekali
Sedangkan secara objektif, QoS pada suatu layanan diukur berdasarkan
parameter-parameter tertentu yang dapat mempengaruhi tingkat QoS pada VoIP.
Parameter-parameter tersebut yaitu :
2.3.1 Jitter
Jitter adalah perbedaan selang waktu kedatangan antar paket di terminal
tujuan, atau dengan kata lain jitter merupakan variasi dari delay. Besarnya nilai
jitter mengakibatkan rusaknya data yang diterima, baik itu berupa penerimaan
yang terputus-putus atau hilangnya data akibat overlap dengan paket data yang
lain. Banyak hal yang dapat menyebabkan jitter, diantaranya adalah peningkatan
traffic secara tiba-tiba sehingga menyebabkan penyempitan bandwidth dan
menimbulkan antrian. Untuk kualitas Jitter dikatakan baik apabila waktunya
hanya sekitar 0 – 20 ms.
24
Hal ini diakibatkan oleh variasi-variasi dalam panjang antrian, dalam waktu
pengolahan data, dan juga dalam waktu penghimpunan ulang paket-paket di akhir
perjalanan jitter. Jitter lazimnya disebut variasi delay, berhubungan erat dengan
latency, yang menunjukkan banyaknya variasi delay pada transmisi data di
jaringan. Terdapat empat kategori penurunan performansi jaringan berdasarkan
nilai peak jitter sesuai dengan versi TIPHON, yaitu :
Tabel 2.3 Batasan Jitter
Kategori Degradasi
Peak Jitter
Sangat Bagus
0 ms
Bagus
0 s/d 75 ms
Sedang
75 s/d 125 ms
Jelek
125 s/d 225 ms
Persamaan perhitungan jitter :
Jitter
= _Total variasi delay (iv)_
Total paket yang diterima
Total variasi delay diperoleh dari :
Total variasi delay = Delay - Rata-rata Delay
2.3.2 Throughput
Throughput yaitu kecepatan (rate) transfer data efektif, yang diukur dalam
bps. Karena sejumlah faktor, throughput biasanya tidak sesuai dengan bandwidth
yang ditentukan dalam implementasi lapisan fisik seperti Ethernet. Banyak faktor
yang mempengaruhi throughput. Diantara factor-faktor tersebut jumlah lalu lintas,
jenis lalu lintas, dan jumlah perangkat jaringan ditemui pada jaringan yang diukur.
Dalam topologi multi-access seperti Ethernet, node bersaing untuk akses media
dan penggunaannya.
Throughput merupakan jumlah total kedatangan paket yang sukses yang
diamati pada destination selama interval waktu tertentu dibagi oleh durasi
interval waktu tersebut.
25
2.3.3 Delay (latency)
Delay adalah waktu yang dihabiskan untuk mengantar paket-paket voice
diantara dua endpoint (Rachmat Rafiudin 2006:64). Delay dapat dipengaruhi oleh
jarak, media fisik, kongesti atau juga waktu proses yang lama. Adapun komponen
delay adalah sebagai berikut:
a.
Serialization delay
Delay ini terjadi karena adanya waktu yang dibutuhkan untuk pentransmisian
paket IP dari sisi originating (pengirim). Dipengaruhi oleh kualitas bahan dari
media.
b.
Propagation delay
Delay ini terjadi karena perambatan atau perjalanan. Packet IP di media
transmisi ke alamat tujuan. Seperti contohnya delay propagasi di dalam kabel
akan memakan waktu 4 sampai 6 ms per kilometernya. Hal ini dipengaruhi
oleh panjang dari media.
c.
Queuing delay
Delay ini disebabkan oleh waktu proses yang diperlukan oleh router didalam
menangani antrian transmisi paket di sepanjang jaringan. Umumnya delay ini
sangat kecil , kurang lebih 100ms.
d.
Codec delay
Waktu yang diperlukan oleh Digital Signal Processing (DSP) untuk
mengkompress sebuah block PCM, nilainya bervariasi bergantung dari codec
dan kecepatan prosessor. Biasanya ini digunakan pada Voice over Internet
Protocol (VoIP). Codec G.711 lebih bagus kualitas suaranya, namun besar di
overhead (biasa digunakan pada koneksi LAN), sedangkan G.729 kualitas
suara yang biasa namun kecil di overhead (biasa digunakan pada WAN).
26
Gambar 2.6 Codec VoIP
Besarnya delay yang direkomendasikan oleh ITU untuk aplikasi dalam
Recommedation G.711 adalah seperti pada Tabel 2.4.
Tabel 2.4 Pedoman batasan delay
Delay (ms)
0 – 150
BESAR DELAY
Diterima untuk aplikasi pengguna yang
paling banyak.
150 – 400
Diterima. Namun administrator harus
waspada terhadap segala sesuatu yang dapat
mempengaruhi kualitas jaringan.
Di atas 400
Tidak dapat diterima. Namun, untuk kasus –
kasus khusus nilai batas ini dapat berubah.
2.3.4 Packet Loss
Packet Loss merupakan suatu parameter yang menggambarkan suatu
kondisi yang menunjukkan jumlah total paket yang hilang, dapat terjadi karena
collision dan antrian yang melebihi batas buffer pada jaringan dan hal ini
berpengaruh pada semua aplikasi karena retransmisi akan mengurangi efisiensi
jaringan secara keseluruhan meskipun jumlah bandwidth cukup yang tersedia
untuk aplikasi-aplikasi tersebut. Umumnya perangkat jaringan memiliki buffer
untuk menampung data yang diterima. Jika terjadi kongesti yang cukup lama,
buffer akan penuh, dan data baru tidak akan diterima.
27
Tabel 2.5 Kategori Packet loss
KATEGORI DEGREDASI
PACKET LOSS
Sangat bagus
0
Bagus
3%
Sedang
15 %
Jelek
25 %
2.4 Ancaman Keamanan VoIP
Pada awal VoIP, tidak ada kekhawatiran besar tentang masalah keamanan
yang berkaitan dengan penggunaannya. Orang - orang sebagian besar berkaitan
dengan biaya, fungsionalitas dan kehandalan. Sekarang bahwa VoIP adalah
mendapatkan penerimaan luas dan menjadi salah satu teknologi komunikasi
utama, keamanan telah menjadi isu utama.
Ancaman keamanan menyebabkan lebih banyak perhatian ketika berpikir
bahwa VoIP sebenarnya menggantikan sistem komunikasi yang pernah ada dan
paling aman di dunia yang pernah dikenal POTS (Plain Old Telephone System).
a. Eavesdropping
Eavesdropping (Menguping) adalah cara hacker untuk mencuri kredensial
dan informasi lainnya melalui penyadapan. Pihak ketiga dapat memperoleh
nama, password dan nomor telepon, yang memungkinkan mereka untuk
mendapatkan kontrol atas pesan suara.
Mencuri mandat untuk melakukan panggilan tanpa membayar bukan satusatunya alasan di balik pencurian identitas. Banyak orang melakukannya untuk
mendapatkan informasi penting seperti data bisnis.
b. Vishing
Vishing adalah kata lain untuk VoIP Phishing, yang melibatkan pihak
menelepon dengan berpura-pura sebagai organisasi tertentu yang dapat
dipercaya dan meminta informasi rahasia.
28
c. Virus dan malware
Pemanfaatan VoIP melibatkan softphone, dan perangkat lunak yang rentan
terhadap worm, virus dan malware, seperti aplikasi internet. Karena aplikasi
softphone berjalan pada sistem pengguna seperti PC dan PDA, mereka terbuka
dan rentan terhadap serangan kode berbahaya dalam aplikasi suara.
d. DoS (Denial of Service)
Sebuah serangan DoS adalah serangan pada jaringan atau perangkat
menyangkal hal itu dari layanan atau konektivitas. Hal ini dapat dilakukan
dengan mengkonsumsi bandwidth atau overloading jaringan atau sumber daya
perangkat internal.
Dalam VoIP, serangan DoS dapat dilakukan dengan membanjiri target
dengan SIP pesan panggilan – sinyal yang tidak perlu, sehingga merendahkan
layanan. Ini menyebabkan panggilan untuk drop prematur dan menghentikan
panggilan pengolahan.
e. SPIT (Spamming over Internet Telephony)
Jika menggunakan email secara teratur, maka harus tahu apa spamming.
Sederhananya, spamming benar-benar mengirim email ke orang bertentangan
dengan keinginan si penerima. Email ini terutama terdiri dari panggilan
penjualan online. Spamming di VoIP sangat tidak umum, tapi mulai menjadi,
terutama dengan munculnya VoIP sebagai alat industri.
Setiap account VoIP memiliki alamat IP yang terkait. Sangat mudah bagi
spammer untuk mengirimkan pesan mereka (voicemail) ke ribuan alamat IP.
Voicemailing sebagai hasilnya akan menderita. Dengan spamming, voicemail
akan menjadi tersumbat dan lebih banyak ruang serta alat manajemen pesan
suara yang lebih baik akan diperlukan. Selain itu, pesan spam dapat membawa
virus dan spyware.
Serangan phishing terdiri dari mengirim pesan suara kepada seseorang,
yang menyamar dengan informasi dari pihak yang dapat dipercaya untuk
penerima, seperti bank atau layanan pembayaran online, membuatnya berpikir
29
ia aman. Voicemail biasanya meminta data rahasia seperti password atau
nomor kartu kredit.
f. Panggilan gangguan
Panggilan gangguan adalah serangan yang melibatkan gangguan panggilan
telepon berlangsung. Sebagai contoh, penyerang hanya dapat merusak kualitas
panggilan dengan menyuntikkan paket kebisingan dalam aliran komunikasi.
Dia juga bisa menahan pengiriman paket, sehingga komunikasi menjadi turun
naik dan mengalami periode panjang selama panggilan berlangsung.
g. Serangan man-in-the-middle
VoIP sangat rentan terhadap serangan man-in-the-middle, di mana
penyerang penyadapan panggilan sinyal lalu lintas pesan SIP dan menyamar
sebagai pihak yang memanggil kepada pihak yang dipanggil, atau sebaliknya.
Setelah penyerang telah memperoleh posisi ini, dia bisa membajak panggilan
melalui server redirection.
Dalam aplikasi VoIP sebuah serangan Denial of Service, si penyerang akan
mencoba untuk mencegah akses seorang pengguna terhadap sistem atau jaringan
dengan menggunakan beberapa cara, yakni sebagai berikut:
a.
Membanjiri lalu lintas jaringan dengan banyak data sehingga lalu lintas
jaringan yang datang dari pengguna yang terdaftar menjadi tidak dapat masuk
ke dalam sistem jaringan. Teknik ini disebut sebagai traffic flooding.
b.
Membanjiri jaringan dengan banyak request terhadap sebuah layanan
jaringan yang disedakan oleh sebuah host sehingga request yang datang dari
pengguna terdaftar tidak dapat dilayani oleh layanan tersebut. Teknik ini
disebut sebagai request flooding.
c.
Mengganggu komunikasi antara sebuah host dan clientnya yang terdaftar
dengan menggunakan banyak cara, termasuk dengan mengubah informasi
konfigurasi sistem atau bahkan perusakan fisik terhadap komponen dan
server.
30
2.5 Denial-of-Service (DoS)
Salah satu serangan yang sering digunakan oleh penyerang adalah dengan
menggunakan DoS/DDoS, yaitu membanjiri komputer target dengan sejumlah
permintaaan yang sangat banyak. Apabila komputer target tidak mampu
mengatasi permintaan tersebut, maka akan mengakibatkan sistem tersebut
menjadi crash atau hang (Wiharsono Kurniawan 2007:195).
Gambar 2.7 Denial of Service
Serangan DoS mungkin menimbulkan ancaman terbesar bagi sistem
perusahaan VoIP. Bahkan, aplikasi VoIP memberikan perlindungan yang sangat
baik untuk melancarkan serangan DoS karena VoIP berjalan media yang terus
menerus dari paket IP. Untuk menciptakan kekacauan, hacker hanya perlu
menyimpan beberapa aliran paket yang terus menerus dan berjalan terus menerus.
Parahnya lagi, kemampuan untuk memanggil masuk dan keluar dari lapisan VoIP
memungkinkan kontrol aplikasi melalui jaringan suara, sehingga hampir tidak
mungkin untuk melacak sumber serangan itu. Selain itu, protokol yang digunakan
oleh sejumlah aplikasi VoIP, menghambat kemampuan ISP untuk melacak
aktivitas DoS.
Bentuk serangan Denial of Service awal adalah serangan SYN Flooding
Attack, yang pertama kali muncul pada tahun 1996 dan mengeksploitasi terhadap
kelemahan yang terdapat di dalam protokol Transmission Control Protocol
(TCP). Serangan-serangan lainnya akhirnya dikembangkan untuk mengeksploitasi
31
kelemahan yang terdapat di dalam sistem operasi, layanan jaringan atau aplikasi
untuk menjadikan sistem, layanan jaringan, atau aplikasi tersebut tidak dapat
melayani pengguna, atau bahkan mengalami crash. Meskipun demikian, serangan
terhadap TCP merupakan serangan DoS yang sering dilakukan. Hal ini
disebabkan karena jenis serangan lainnya (seperti halnya memenuhi ruangan
harddisk dalam sistem, mengunci salah seorang akun pengguna yang valid, atau
memodifikasi tabel routing dalam sebuah router) membutuhkan penetrasi
jaringan terlebih dahulu, yang kemungkinan penetrasinya kecil, apalagi jika
sistem jaringan tersebut telah diperkuat.
Dalam sebuah serangan Denial of Service, si penyerang akan mencoba
untuk mencegah akses seorang pengguna terhadap sistem atau jaringan dengan
menggunakan beberapa cara, yakni sebagai berikut:
a.
Ping Of Death
Merupakan serangan lama yang dulu sering digunakan. Serangan ini
dilancarkan dengan menggunakan utility ping pada sebuah sistem operasi. Ping
biasanya digunakan untuk memeriksa keberadaan sebuah host. Atau alamat IP
dari sebuah website. Data yang dikirimkan secara default adalah 32 bytes, namun
pada kenyataannya program ini dapat mengirimkan sampai dengan 64 kb data.
Sekarang serangan seperti ini sudah tidak manjur lagi, karena banyak sistem yang
telah meng-update patchnya dan menutup lubang-lubang tersebut. Ditambah
dengan teknologi yang semakin canggih dan lebarnya bandwidth yang tersedia
sehingga serangan ini tidak lagi menimbulkan efek khusus bagi sebuah sistem.
b. TCP SYN
Serangan yang dilakukan dengan cara memanfaatkan kelemahan protokol
pada saat terjadinya handshake (jabat tangan). Saat dua buah komputer
memutuskan untuk melakukan komunikasi, komputer pengirim (penyerang) akan
mengirimkan syn, penerima (target) akan menjawab dengan mengirimkan syn ack
kepada komputer pengirim. Seharusnya setelah menerima balasan syn ack dari
penerima, pengirim mengirimkan ack kepada penerima untuk melakukan proses
handshake. Namun pada kenyataannya, pengirim justru mengirimkan banyak
32
paket syn kepada penerima yang mengakibatkan penerima harus terus menjawab
permintaan dari pengirim (Beny Benardi 2004:10).
Alamat IP penyerang biasanya telah disembunyikan (Spoofed) sehingga
alamat yang dicatat oleh target adalah alamat yang salah. Penerima akan bingung
untuk menjawab permintaan koneksi TCP yang baru karena masih menunggu
banyaknya balasan ack dari pengirim yang tidak diketahui tersebut. Disamping itu
koneksi juga akan dipenuhi syn yang dikirim secara terus menerus. Serangan
seperti ini tentunya akan menghambat penerima memberikan pelayanan kepada
user.
c.
Remote Controled Attack
Pada dasarnya adalah mengendalikan beberapa jaringan lain untuk
menyerang target. Penyerangan dengan tipe ini biasanya akan berdampak besar,
karena biasanya server-server untuk menyerang mempunyai bandwidth yang
besar. Penyerang juga dengan leluasa dapat mengontrol targetnya dan
menyembunyikan diri dibalik jasa server tersebut. Banyak tools yang dapat
digunakan untuk melakukan serangan dengan tipe ini. Umumnya tools yang
digunakan bertipe Master dan Client atau Agent. Master merupakan komputer
master yang telah dikuasai oleh penyerang dan akan digunakan untuk memberi
perintah kepada Agent. Sedangkan Client adalah komputer Zombie yang berhasil
dikuasai oleh penyerang, kemudian menanamkan aplikasi Client yang siap
menunggu perintah untuk menyerang target.
d. UDP Flood
Memanfaatkan protokol UDP yang bersifat Connectionless untuk menyerang
target. Karena sifatnya itulah UDP Flood cukup mudah untuk dilakukan.
Sejumlah paket data yang besar dikirimkan begitu saja kepada korban. Korban
yang terkejut dan tidak siap menerima serangan ini tentu akan bingung dan pada
beberapa kasus komputer server tersebut akan hang karena besarnya paket yang
dikirimkan.
33
e.
Smurt Attack
Merupakan penyerangan dengan memanfaatkan ICMP Echo Request yang
sering digunakan pada saat melakukan broadcast identitas kepada broadcast
address dalam sebuah jaringan. Saat melakukan broadcast pada beberapa
address, semua komputer yang terkoneksi ke dalam jaringan akan ikut menjawab
request tersebut. Hal ini tentu saja akan melambatkan dan memadatkan traffic di
jaringan karena komputer yang tidak ditanya turut memberikan request tersebut.
Hal ini tentu akan berdampak lebih besar bila alamat request disamarkan dan
tidak hanya mengirimkan ICMP request pada sebuah network melainkan dalam
beberapa network. Tentu saja balasan yang diterima lebih besar lagi, dan tak
hanya sampai disitu. Pengirim menyamarkan identitasnya dengan cara memakai
alamat IP user lain. Celakalah bagi user tersebut karena akan menerima balasan
dari ICMP Echo Request dari beberapa jaringan sekaligus.
2.6 Network Simulator
Network Simulator (NS2) adalah simulator kejadian yang ditargetkan pada
penelitian jaringan. NS2 menyediakan dukungan besar untuk simulasi TCP,
routing, dan multicast protocol baik dalam sebuah jaringan berkabel ataupun
jaringan wired, seperti satelit misalnya. NS2 dikembangkan pertama kali tahun di
UCB (University of California Berkeley). NS2 merupakan suatu sistem yang
bekerja pada system Unix/Linux, NS2 juga dapat dijalankan dalam sistem
Windows namun harus menggunakan Cygwin sebagai Linux Enviromentnya.
2.6.1 Kelebihan NS2
Kelebihan dari NS2 adalah sebagai perangkat lunak simulasi pembantu
analisis dalam riset atau penelitian. NS2 dilengkapi dengan tool validasi. Tool
validasi digunakan untuk menguji validitas pemodelan yang ada pada NS2. NS2
memiliki banyak keunggulan yang membuatnya menjadi sangat berguna seperti
dukungan untuk beberapa protokol dan kemampuan grafis detail lalu lintas
jaringan. Selain itu NS2 mendukung beberapa algoritma routing dan antrian.
34
NS2 bersifat open source di bawah GPL (Gnu PublicLicense), sehingga
NS2
dapat
diunduh
melalui
website
Network
Simulator
(NS2)
http://www.isi.edu/nsnam/dist.
2.6.2 Simulasi yang menggunakan NS2
Network Simulator (NS2) mensimulasikan jaringan berbasis TCP/IP dengan
berbagai macam medianya. Anda dapat mensimulasikan protokol jaringan
(TCP/UDP/RTP), Traffic behaviour (FTP, Telnet, CBR, dan lain - lain),
Queuemanagement (RED, FIFO, CBQ) algoritma routing unicast (Distance
Vector, Link State) dan multicast, (PIM SM, PIMDM, DVMRP, Shared Tree dan
Bi directional Shared Tree), aplikasi multimedia yang berupa layered video,
Quality of Service video-audio dan transconding. NS2 juga mengimplementasikan
beberapa MAC (IEEE 802.3, 802.11), di berbagai media misalnya jaringan wired
(seperti LAN, WAN, point-to-point), wireless (seperti mobile IP, WirelessLAN),
bahkan simulasi hubungan antar-node jaringan yang menggunakan media satelit.
2.6.3 Level aplikasi pada NS2
Kedudukan lapisan aplikasi Pada sistem dunia nyata, aplikasi terhubung
dengan lapisan transport yang ada dibawahnya melalui sebuah Aplication
Program Interface (API). Jenis API yang umum digunakan yaitu socket. Ada 2
tipe dasar aplikasi yang disimulasikan pada NS2, yaitu:
a.
Simulated Application pada saat ini baru terdapat dua jenis aplikasi yang
disimulasikan oleh NS yaitu:
FTP, FTP dibangun untuk mensimulasikan bulk data transfer.
Telnet, masing-masing aplikasi diatur oleh transport agent. Jumlah paket
yag ditransmisikan diatur oleh mekanisme flow control dan congestion
control TCP.
b.
Generator Traffic Object generator traffic dibagi atas 4 type, yaitu:
Eksponensial Generator traffic ini membangkitkan traffic dengan inter
arrival time antarpaket sesuai dengan fungsi eksponensial.
Pareto Generator traffic ini membangkitkan traffic dengan inter arrival
time antarpaket sesuai dengan fungsi pareto.
35
CBR, Fungsi ini membangkitkan data secara continue dengan bit rate yang
konstan.
Traffic Trace Generator ini membangkitkan traffic dari sebuah file trace.
2.6.4 Konsep Dasar NS2
Network Simulator merupakan salah satu perangkat lunak atau software
yang dapat menampilkan secara simulasi proses komunikasi dan bagaimana
proses komunikasi tersebut berlangsung. Network Simulator melayani simulasi
untuk komunikasi dengan kabel dan komunikasi wireless. Pada Network
Simulator terdapat tampilan atau display baik dengan node yang bergerak atau
node yang tidak bergerak (Vina 2011:1-10). Yang tentunya tidak sama dengan
keadaan yang sebenarnya. Paket-paket yang membangun di dalam simulasi
jaringan ini diantaranya :
Tcl
Tool Command Language
Tk
Tool Kit
Otcl
Object Tool Command Language
Tclcl
Tool Command Language / C++ Interface
Ns2
Network Simulator versi 2
Nam
Network Animator
Network Simulator dibangun dengan menggunakan 2 bahasa pemrograman,
yaitu C++ dan Tcl/Otcl. C++ digunakan untuk library yang berisi event scheduler,
protocol dan network component yang diimplementasikan pada simulasi oleh
user. Tcl/OTcl digunakan pada script simulasi yang ditulis oleh NS user dan pada
library sebagai simulator objek. OTcl juga nantinya berperan sebagai interpreter.
36
Hubungan antarbahasa pemrograman dapat dideskripsikan seperti Gambar 2.7
dibawah ini.
Gambar 2.9 Hubungan C++ dan Otcl
Bahasa C++ digunakan pada library karena C++ mampu mendukung runtime
simulasi yang cepat, meskipun simulasi melibatkan simulasi jumlah paket dan
sumber data dalam jumlah besar.
Bahasa Tcl memberikan respon runtime yang lebih lambat daripada C++,
namun jika terdapat kesalahan syntax dan perubahan script berlangsung dengan
cepat dan interaktif. User dapat mengetahui letak kesalahannnya yang dijelaskan
pada konsole, sehingga user dapat memperbaiki dengan cepat. Karena alasan
itulah bahasa ini dipilih untuk digunakan pada script simulasi.
2.6.5 Transport Agent pada NS2
Pada jaringan internet, kita tahu ada 4 layer komunikasi TCP/IP yaitu: layer
aplikasi, transport, IP dan network. Lapisan transport merupakan layer
komunikasi yang mengatur komunikasi data yang akan digunakan oleh lapisan
aplikasi di atasnya. NS mensimulasikan lapisan transport dengan objek simulasi
yang bernama transport agent. Pada simulasi pengiriman data, transport agent
tidak berdiri sendiri. Transport agent membutuhkan lapisan aplikasi di atasnya
yang berfungsi sebagai traffic generator.
Protokol lapisan transport data yang didukung network simulator 2 antara
lain :
37
a. Transmission Control Protocol (TCP)
TCP/IP merupakan skenario standar komunikasi data yang digunakan oleh
komunitas internet dalam proses tukar – menukar data dari satu skenario ke
skenario lain dalam jaringan internet. Network simulator 2 mendukung 2 jenis
TCP agent, yaitu one way TCP agent dan Two way TCP agent. Perbedaan kedua
jenis TCP agent ialah:
1) Two way TCP Agent
a) Two way TCP agent mensupport proses handshaking pada saat connectin
setup, sehingga koneksi dapat dibangun atau drop tergantung pada kondisi
jaringannya.
b) Two way TCP agent mensupport data transfer dua arah.
c) Penomoran pada jumlah byte yang ditransfer, bukan jumlah paket.
2) One Way TCP Agent
One way TCP agent tidak mensupport proses handshaking. Pertukaran
data menggunakan agent ini diasumsikan telah melewati proses handshaking.
Simulasi koneksi pada One way TCP dilakukan dengan menggunakan 2 agent
yang berpasangan, yaitu TCP sender, dan TCP Sink.
a) TCP Sender Agent
Network Simulator 2 mendukung beberapa jenis TCP sender agent, yaitu :
TCP Sender base ( Tahoe TCP )
Agent/TCP.
Reno TCP
Agent/TCP/Reno.
New Reno TCP
Agent/TCP/NewReno.
Vegas TCP
Agent/TCP/Vegas.
SACK ( Selective ACK ) TCP
Agent/TCP/Sack1.
FACK ( Forward ACK ) TCP
Agent/TCP/Fack.
38
b) TCP Sink Agent
TCP Sink bertugas mengirimkan ACK per paket yang diterima pada
TCP sender pasangannya. Beberapa macam TCP sink yang disupport oleh
NS yaitu :
Base TCP Sink
Agent/TCPSink.
Delayed ACK
Agent/TCPSink/DelAck.
Sack TCP Sinkl
Agent/TCPSink/Sack.
Delayed Ack dengan Sack
Agent/TCPSink/Sack1/DelAck.
b. User Datagram Protocol (UDP)
UDP menawarkan suatu layanan datagram tanpa koneksi yang menjamin
pengiriman atau pengurutan paket-paket yang dikirimkan secara benar. Koneksi
dengan menggunakan UDP pada NS2 dilakukan dengan menggunakan agent
UDP sebagai pengirim dan agent Null sebagai penerima. Agent pengirim,
diterapkan pada NS sebagai :
1) UDP sender agent
Agent/UDP.
2) Agent Null
Agent Null merupakan pasangan UDP sebagai tujuan trafik.
3) Agent Null
Agent/Null.
c.
Real Time Transport Protocol (RTP)
RTP menyelenggarakan end to end delivery services untuk data yang
memiliki karakteristik real time, seperti audio dan video interaktif. Layanan
tersebut termasuk identifikasi tipe payload, pengurutan, timestamping, dan
monitor pengiriman data. Sama seperti UDP, pemakai RTP sebagai agent
pengirim dipasangkan dengan agent Null sebagai penerima.
39
2.6.6 Dasar Bahasa TCL dan OTC
1. Tcl
Tcl atau yang lebih dikenal dengan Tool Command Language adalah bahasa
pemrograman yang didasarkan pada string atau string-based command. Tcl di
desain untuk menjadi perekat dalam membangun software building block untuk
menjadi suatu aplikasi.
Sedangkan OTCL (Object Oriented Tcl) adalah ekstensi tambahan pada Tcl
yang memungkinkan fungsi Object Oriented (OO). Hal ini memungkinkan dalam
pendefinisian dan penggunaan class Otcl. Perintah – perintah dalam Tcl adalah :
a) Syntax Dasar
Syntax dasar perintah tcl yaitu :
command arg1 arg2 arg3……
Command tersebut bisa berupa nama dari built in command atau sebuah
prosedur Tcl. Contoh :
expr 2*3
puts “ ini adalah contoh command “
b) Variabel dan array :
Untuk membuat variable pada tcl, digunakan perintah set.
Contoh :
Set x “ini contoh variabel”
Set y 20
Pemanggilan variabel dilakukan dengan menggunakan tanda $ seperti contoh
di bawah ini :
Puts “$x, semuanya berjumlah $y”
NS juga mensupport penggunaan array. Array ditandai dengan menggunakan
tanda kurung setelah nama array tersebut.
Contoh :
Set opts (bottlenecklinkrate) 1Mb
Set opts (ECN) “on”
Set n(0) [$ns node]
40
Set n(1) [$ns node]
Pada contoh di atas, array pertama bernama opts, dan yang kedua bernaman.
c) Repetisi (loop)
Ada 2 perintah repetisi, yaitu :
1) while
format perintahnya :
while {condition}{command}
command pada while dilakukan berulang selama kondisi bernilai benar.
Perintah untuk mengakhiri repetisi dinyatakan pada bagian command.
Contoh :
Set i 0
While {$i < 10}{set n($i)}[new Node]
Incr i}
2) For
Format perintahnya :
For {command1}{condition}{command2}{
Command
}
Command dilakukan terus menerus selama kondisi bernilai benar.
Inisialisasi dilakukan pada command1, terminating condition berada pada
kondisi, dan perubahan nilai inisialisasi pada command2.
Contoh :
For {set i 0}{$i<100}{incr i}{
Set n($i)[$ns node]
}
d) Perintah Kondisional
Format perintah :
If{condition}{
Command
}
41
command dilakukan jika kondisi bernilai benar.
Contoh :
if {$i < 10}{
puts “i is less than 10”
}
e) Comment
Jika Tcl menemukan sebuah tanda #, maka mulai dari tanda tersebut
sampai ke akhir baris, tcl tidak akan mengeksekusinya dan menganggapnya
sebagai komentar.
Ada 2 metode pembuatan prosedur yaitu :
1) Prosedur tanpa parameter
Format perintah :
Proc name {}{
Command
}
contoh :
proc tampil {}{
puts “ini tampilannya”
}
prosedur digunakan dengan mengetikkan nama prosedur.
2) Prosedur dengan menyatakan parameter
Format perintah :
Proc name {parameter1}{
Puts “nilai parameter1 adalah $parameter1”
}
dipanggil dengan proc 10
Nama prosedur, built in command, variabel dan array bersifat case
sensitif. Nama prosedur dan variabel tidak akan konflik satu sama lain. Agar
variabel yang dideklarasikan pada program utama dapat digunakan dalam
prosedur atau sebaliknya. Perintah yang harus ditambahkan adalah :
global <variable1><variable2>
pada command body prosedur
42
2. OTCL
Otcl adalah ekstensi tambahan pada Tcl yang memungkinkan fungsi object
oriented (OO) pada Tcl. Ini memungkinkan pendefinisian dan penggunaan class
Otcl.
Loop
: while dan for
Perintah Kondisional
: if {Condition}……
2.6.7 Cara Membuat dan Menjalankan Script NS
Script simulasi dibuat dengan menggunakan program teks editor pada OS
yang digunakan dan disimpan dalam sebuah folder dengan nama_file.tcl
Contoh :
simulasi.tcl
Untuk menjalankan simulasi yang telah dibuat, tinggal masuk ke dalam folder
tersebut dan mengetikkan NS serta nama file tcl simulasi yang ingin dijalankan.
Contoh : [root@accessnet your_folder]#ns simulasi.tcl
2.6.8 Output Simulasi NS2
Pada saat satu simulasi berakhir, NS membuat satu atau lebih file output
text-based yang berisi detail simulasi jika dideklarasikan pada saat membangun
simulasi. Ada dua jenis output NS, yaitu :
File trace, yang akan digunakan untuk analisa numerik, dan
File namtrace, yang digunakan sebagai input tampilan grafis simulasi yang
disebut network animator (nam).
43
Gambar 2.9 Nam Konsole
Gambar 2.10 NAM
Didalam NS-2 terdapat tiga buah bagian yang membangun suatu simulasi.
Diantaranya adalah :
- Program Utama
- Program untuk membuat node atau titik
- Program untuk sending data
Untuk mengeksekusi program yang dibuat dilakukan dengan cara :
# ns <nama_file>.tcl
44
Untuk melihat display hasil dari program yang dibuat dapat dilakukan dengan
cara :
# nam <nama_file>.nam
Sedangkan untuk melihat trace yang terjadi selama proses komunikasi
dengan melihat file.tr yang berada pada folder script program simulasi. Berikut ini
adalah contoh dari isi dari suatu file trace untuk simulasi wired node :
r 1.3356 3 2 ack 40 ------------------1 3.0 0.0 15 201
+ 1.3556 2 0 ack 40 ------------------1 3.0 0.0 15 201
- 1.3556 2 0 ack 40 -----------------1 3.0 0.0 15 201
r 1.35576 0 2 tcp 1000 --------------1 0.0 3.0 29 199
r 1.3356 3 2 ack 40 ------------------1 3.0 0.0 15 201
+ 1.3556 2 0 ack 40 ------------------1 3.0 0.0 15 201
- 1.3556 2 0 ack 40 -----------------1 3.0 0.0 15 201
r 1.35576 0 2 tcp 1000 --------------1 0.0 3.0 29 199
:
:
:
:
dan seterusnya
Aturan-aturan dalam membaca hasil trace dari file dalam pembuatan network
simulator adalah :
Keterangan :
1.
Even (kejadian)
Kejadian yang dicatat oleh ns yaitu :
r : receive
+ : enqueque
- : degueue
d : drop
45
2.
Paity/Time : Waktu kejadian dalam detik
3.
From Node
4.
To Node
5.
Pkt Type : tipe paket yang dikirimkan seperti :
tcp ,udp ,ack dan lain-lain.
6.
Pkt size
7.
Flags : Penanda, macam flags yang dapat digunakan
E : Untuk kongesti /sibuk
N : Untuk indikasi pada header
C : Untuk ECN echo
A : Untuk pengurangan window kongesti
P : Untuk prioritas
F : Untuk TCP fast start
8.
FID : Penomoran unik pada tiap aliran data
9.
Src addr : Alamat asal paket (dalam port)
10. Dst addr : Alamat tujuan paket (dalam port)
11. Sequence Number : Nomor urut tiap paket.
12. Packet ID : Penomoran untuk tiap paket
Sedangkan untuk format trace pada jaringan wireless adalah :
s 2.000931471 _3_ MAC --- 20 tcp 112 [13a 0 1 800] ------- [4194305:20:0
32 4194304] [0 0] 0 0
Keterangan :
1.
Baris pertama berisi tentang r “received”, s “sent”, f “forwaded”dan d
“dropped”
2.
Baris kedua adalah waktu (time)
3.
Baris ketiga adalah nomor node
4.
Baris keempat adalah trace level antara lain MAC menunjukkan jika packet
berhubungan dengan MAC layer. Untuk AGT menunjukkan packet transport
layer. Untuk RTR jika itu menunjukkan packet route.
5.
Angka 20 adalah nomor urut packet
6.
“tcp” adalah type packet (tcp, ack, udp)
46
7.
[13a 0 1 800] menunjukkan informasi MAC layer.
8.
[4194305:2 0:0 32 4194304] menunjukkan IP source dan alamat tujuan
kemudian ttl (time to live) dari packet.
9.
[0 0] menunjukkan nomor urut dan pemberitahuan nomor (tcp information).
10. 0 0 adalah format mekanisme routing type packet.
2.6.9 Awk script
Awk adalah sebuah perograman filter untuk teks yang biasa digunakan
untuk mengolah data dalam bentuk text, seperti halnya perintah “grep”. Awk
dapat digunakan untuk mencari bentuk/model dalam sebuah file teks. Awk juga
dapat mengganti bentuk satu teks ke dalam bentuk teks lain. Awk dapat juga
digunakan untuk melakukan proses aritmatika seperti yang dilakukan oleh
perintah “expr”.
Awk adalah sebuah pemrograman seperti pada shell atau C yang memiliki
karakteristik yaitu sebagai tools yang cocok untuk jobs juga sebagai pelengkap
(complicated) untuk filter standard. Jika kecepatan merupakan hal yang pokok,
awk adalah suatu produk bahasa yang sangat sesuai. Tetapi hanya untuk even jobs
dimana kecepatan menjadi sesuatu hal yang pokok atau utama, maka awk dapat
digunakan sebagai bentuk prototype-nya. Meskipun awk dan shell keduanya
adalah bahasa pemrograman, keduanya adalah spesialis untuk aplikasi yang
berbeda. Awk sangat baik untuk manipulasi file teks, sedangkan shell sangat baik
untuk pelaksana perintah UNIX.
Awk sangat cocok untuk menyelesaikan tugas sederhana, seperti halnya
penyuntingan sebuah kata untuk dicetak oleh perintah date atau tugas komplek
lainnya seperti pelayanan pengolahan sebuah data base sederhana atau paket
statistik.
Sebuah awk script terdiri dari 2 bagian; yaitu "pattern dan action". Pattern
adalah serupa dengan regular expressions, dan action sama seperti bahasa C yaitu
aksi dari hasil sebuah perintah. Pattern dengan regular ekspresi diperlihatkan pada
tabel dibawah ini.
47
Tabel 2.6 Pattern awk
Metacharacter
Meaning
. (Dot)
Match any character
*
Match zero or more character
^
Match beginning of line
$
Match end of line
/
Escape character following
[]
List
{}
Match range of instance
+
Match one more preceding
?
Match zero or one preceding
|
Separate choices to match
Sedangkan sintak umum dari script awk adalah sebagai berikut:
Sintak : awk -f {awk program file} filename
Pernyataan didalam program awk :
Pattern {
action 1
action 2
action N
}
Didalam program awk, pattern diikuti oleh action, dengan tanda kurung
kurawal { } yang mengelilingi setiap action. Sebuah action adalah pelaksana jika
pattern sesuai dengan sesuatu yang ada didalam baris input. Jika bagian pattern
tidak ada, action akan melakukan aksi untuk tiap-tiap baris dalam file. Jika action
tidak ada, maka default action yaitu mencetak baris dilaksanakan.
Tanda kutip didaerah sekitar awk script merupakan suatu kebutuhan, sebab
script akan bernilai kosong jika tanpa tanda kutip. Perintah print digunakan untuk
mencetak seluruh baris mungkin juga bisa untuk mencetak konstanta, karakter
dari baris input, dan juga mencetak argument, disamping itu pada program ini
tidak memiliki parameter. Sebuah print dengan argument dalam awk
menggunakan parameter $.
Download