BAB II LANDASAN TEORI
4.1
Jaringan Sensor Wireless Jaringan sensor wireless merupakan sebuah infrastruktur nirkabel yang
digunakan untuk mengukur, menghitung dan mengkomunikasikan elemenelemen guna memberi kemampuan bagi administrator untuk memantau, mengatur dan bertindak terhadap suatu gejala atau fenomena dalam lingkungan tertentu. Administrator dalam hal ini dapat berupa masyarakat umum, pemerintah, komersial atau industri [1]. Secara garis besar jaringan sensor wireless dibagi atas [1]:
Category 1 1. Berbasis topologi jaringan mesh. 2. Menggunakan koneksi multihop dalam jaringan. 3. Memiliki rute yang dinamis dalam jaringan. 4. Digunakan dalam sistem militer dan keamanan negara.
Category 2 1. Berbasis point-to-point atau multipoint-to-point. 2. Menggunakan koneksi one-hop dalam jaringan. 3. Memiliki rute yang statis dalam jaringan. 4. Digunakan dalam sistem kontrol lingkungan.
2.1.1
Aplikasi Jaringan Sensor Wireless Dahulu jaringan sensor hanya digunakan dalam teknologi aplikasi
canggih seperti sistem pendeteksi radiasi nuklir, sensor senjata pada kapal
4 Universitas Sumatera Utara
5
perang dan peralatan medis. Saat ini jaringan sensor sudah merambat ke bidang lain seperti jaringan biologis, sensor kimia dan sebagainya [1]. Berikut contoh aplikasi jaringan sensor [1]:
Military applications o Monitoring friendly forces and equipment o Targeting o Military-theater or battlefield surveillance o Battle damage assessment o Nuclear, biological, and chemical attack detection
Environmental applications o Microclimates o Forest fire detection o Flood detection o Precision agriculture
Health applications o Remote monitoring of physiological data o Tracking and monitoring doctors and patients inside a hospital o Drug administration o Elderly assistance
Home applications o Home automation o Instrumented environment o Automated meter reading
4.2
Zigbee Zigbee merupakan salah satu teknologi jaringan wireless yang banyak
digunakan pada low power environment. Perangkat Zigbee beroperasi pada frekuensi 868 MHz, 915 MHz dan 2.4 GHz. Data rate maksimum yang dapat
Universitas Sumatera Utara
6
dicapai oleh Zigbee sebesar 250 Kbps. Zigbee sangat ideal digunakan pada aplikasi yang bertenaga baterai dengan data rate rendah, harga murah dan daya tahan baterai lama [2]. Kebanyakan aplikasi Zigbee menghabiskan waktu dalam power saving (sleep) mode. Dengan demikian, perangkat dapat beroperasi selama bertahuntahun sampai diperlukan pergantian baterai [2]. Zigbee dibagi atas 2 bagian. Pertama, application layer (APL) dan network layer (NWK) yang diatur oleh Aliansi Zigbee. Kedua, physical layer (PHY) dan medium access control layer (MAC) yang distandarkan oleh IEEE 802.15.4.
2.2.1
Hubungan Zigbee dengan IEEE 802.15.4 Sebuah jaringan komunikasi (wired atau wireless) diciptakan
menggunakan konsep networking layers. Setiap layer bertanggung jawab atas fungsi tertentu dalam jaringan. Layer melewatkan data dan perintah hanya kepada layer yang tepat berada di atas atau di bawahnya [2] Layer-layer pada Zigbee dapat dilihat pada gambar 2.1. Model layer pada Zigbee dibuat berdasarkan referensi Open System Interconnect (OSI).
Gambar 2.1 Zigbee Layers [2]
Universitas Sumatera Utara
7
2.2.2 Frekuensi Operasi dan Data Rate Zigbee Ada 3 frekuensi yang ditetapkan oleh IEEE 802.15.4 pada September 2006 yaitu [2]: 1.
868-868.6 MHz (868 MHz)
2.
902-928 MHz (915 MHz)
3.
2400-2483.5 MHz (2.4 GHz)
Tabel 2.1 Frekuensi Operasi dan Data Rate Zigbee [2]
Menurut IEEE 802.15.4, transceiver yang beroperasi di frekuensi 868 MHz harus mampu beroperasi di frekuensi 915 MHz dan sebaliknya. Oleh karenanya, kedua frekuensi selalu digabung menjadi frekuensi operasi 868/915 MHz [2]. IEEE 802.15.4 memiliki spesifikasi bawaan dan optional bagi frekuensi 868/915 MHz. Spesifikasi bawaan lebih mudah diimplementasikan tetapi memiliki data rate rendah (20 Kbps dan 40 Kbps). Spesifikasi optional lebih rumit diimplementasikan tetapi memiliki data rate sebesar
Universitas Sumatera Utara
8
250 Kbps. Jika user memilih untuk mengimplementasikan spesifikasi optional, spesifikasi bawaan tetap harus digunakan karena transceiver akan merubah mode-nya menjadi bawaan atau optional dalam pengoperasiannya [2]. Transceiver 2.4 GHz mampu beroperasi di frekuensi 868/915 MHz karena memiliki 16 channel. Frekuensi 868 MHz memiliki satu channel sedangkan frekuensi 915 MHz memiliki 10 channel. Frekuensi 2.4 GHz memiliki data rate dan jumlah channel tertinggi. Oleh karenanya, transceiver 2.4 GHz lebih favorit di pasaran dibandingkan dengan transceiver frekuensi lain. Akan tetapi IEEE 802.11b juga beroperasi pada frekuensi yang sama dan keberadaanya dapat menimbulkan isu pada beberapa aplikasi [2]. Ada 3 tipe modulasi dalam IEEE 802.15.4 yaitu binary phase shift keying (BPSK), amplitude shift keying (ASK) dan offset quadrature phase shift keying (O-QPSK). Pada BPSK dan O-QPSK, data digital merupakan fase dari sinyal. Sedangkan data digital pada ASK merupakan amplitudo dari sinyal [2].
2.2.3
Tipe dan Fungsi Device Ada 2 tipe device dalam IEEE 802.15.4 yaitu full-function device
(FFD) dan reduced-function device (RFD). FFD mampu melaksanakan semua tugas yang ditentukan oleh IEEE 802.15.4, sedangkan RFD memiliki kemampuan yang terbatas. FFD dapat berkomunikasi dengan perangkat lain
Universitas Sumatera Utara
9
dalam jaringan, sedangkan RFD hanya dapat berkomunikasi dengan FFD. RFD digunakan untuk aplikasi yang sangat sederhana seperti mengaktifkan atau menonaktifkan switch. Kemampuan memproses dan ukuran memori RFD lebih kecil dari FFD [2]. Dalam IEEE 802.15.4, FFD dapat berfungsi sebagai koordinator, koordinator PAN atau device. Koordinator adalah FFD yang mampu menyampaikan pesan. Jika koordinator tersebut juga merupakan ketua pengontrol dari sebuah personal area network (PAN) maka disebut sebagai koordinator PAN. Device yang tidak berfungsi sebagai koordinator atau koordinator PAN dinamakan sebagai device [2].
Gambar 2.2 Tipe dan Fungsi Device dalam IEEE 802.15.4 [2]
2.2.4
Topologi Jaringan pada Zigbee Bentuk jaringan pada Zigbee diatur dalam layer NWK. Jaringan yang
dibentuk harus sesuai dengan topologi-topologi jaringan yang di-support oleh IEEE 802.15.4 yaitu star dan peer-to-peer [2]. Pada topologi jaringan star, setiap device dalam jaringan hanya dapat berkomunikasi dengan koordinator PAN [2].
Universitas Sumatera Utara
10
Contoh topologi jaringan star dapat dilihat pada gambar 2.3.
Gambar 2.3 Topologi Jaringan Star [2] Pada
topologi
jaringan
peer-to-peer,
setiap
device
dapat
berkomunikasi dengan device lain jika jaraknya berdekatan. Semua FFD dalam topologi jaringan ini dapat berfungsi sebagai koordinator PAN. FFD pertama yang memulai komunikasi ditetapkan sebagai koordinator PAN. Dalam jaringan peer-to-peer, semua device yang berpartisipasi dalam menyampaikan pesan adalah FFD karena RFD tidak mampu menyampaikan pesan. RFD dapat menjadi bagian dari jaringan tetapi hanya dapat berkomunikasi dengan device tertentu (koordinator atau router) dalam jaringan [2].
Gambar 2.4 Topologi Jaringan Mesh [2] Topologi jaringan peer-to-peer dikenal sebagai topologi jaringan mesh jika devices dalam jaringan tidak memiliki larangan dalam berkomunikasi [2].
Universitas Sumatera Utara
11
Bentuk lain dari jaringan peer-to-peer adalah topologi jaringan tree. Pada topologi jaringan tree, cabang-cabang dalam jaringan dibentuk oleh router [2].
Gambar 2.5 Topologi Jaringan Tree [2] Gambar 2.5 memperlihatkan bahwa pengiriman sebuah pesan dapat menambah jangkauan suatu jaringan. Sebagai contoh, device A hendak mengirim pesan kepada device B, tetapi terdapat sebuah barrier yang menghalangi keduanya. Hal ini dapat diatasi dengan topologi jaringan tree. Proses pengiriman pesan seperti ini disebut multihopping karena pesan hop dari node ke node hingga mencapai destinasi. Proses ini berpotensi menimbulkan message latency yang tinggi [2]. Topologi
jaringan
selalu
diciptakan
oleh
koordinator
PAN.
Koordinator PAN mengontrol jaringan dan melaksanakan tugas-tugas [2]: 1. Mengalokasikan alamat yang unik untuk setiap device dalam jaringan. 2. Memulai, menghentikan dan mengarahkan pesan-pesan dalam jaringan.
Universitas Sumatera Utara
12
3. Memilih sebuah PAN identifier untuk jaringan agar devices dapat menggunakan metode 16-bit short-addressing sehingga mampu berkomunikasi dengan device jaringan lain. Setiap jaringan hanya
memiliki
sebuah koordinator
PAN.
Koordinator PAN membutuhkan waktu aktif yang lama sehingga dihubungkan dengan power supply [2].
2.2.5
Layer pada Zigbee PHY Layer Layer terbawah pada Zigbee adalah PHY. Layer ini merupakan layer
yang paling dekat hubungannya dengan hardware. Layer ini mengontrol dan berkomunikasi dengan transceiver radio secara langsung. Layer PHY bertanggung jawab untuk mengaktifkan radio guna mengirim atau menerima paket. Layer PHY juga memilih channel frekuensi dan memastikan bahwa channel tersebut tidak sedang digunakan oleh device jaringan lain [2]. Struktur Umum Paket PHY Data dan perintah dikomunikasikan antar devices dalam bentuk paketpaket. Struktur umum dari sebuah paket dapat dilihat pada gambar 2.6. Paket PHY terdiri dari tiga bagian yaitu Synchronization header (SHR), PHY header (PHR) dan PHY payload [2].
Gambar 2.6 Struktur Umum Paket PHY [2]
Universitas Sumatera Utara
13
SHR mengaktifkan receiver untuk memulai sinkronisasi dan menguncinya menjadi bit stream. PHR berisi informasi panjang frame. PHY payload disediakan oleh layer yang berada diatas dan berisi data atau perintah untuk device penerima [2]. MAC frame (yang dikirim ke device lain sebagai PHY payload) mempunyai tiga bagian. MAC header (MHR) berisi informasi alamat dan keamanan. MAC payload mempunyai panjang yang berukuran variabel (termasuk zero) dan berisi perintah atau data. MAC footer (MFR) berisi sebuah 16-bit Frame Check Sequence (FCS) untuk verifikasi data [2]. NWK frame mempunyai dua bagian yaitu NWK header (NHR) dan NWK payload. NWK header berisi informasi kontrol. NWK payload disediakan oleh sublayer APS. Pada frame sublayer APS, APS header (AHR) mempunyai kontrol APL layer dan informasi alamat. Auxiliary frame header (Auxiliary HDR) berisi mekanisme keamanan pada frame (penggunaan security key). NWK dan MAC frames juga mempunyai pilihan auxilary header untuk tambahan keamanan. APS payload berisi data atau perintah. Message Integrity Code (MIC) merupakan sebuah fungsi keamanan pada APS frame untuk mendeteksi adanya perubahan yang bersifat unauthorized pada isi pesan [2].
MAC Layer Layer MAC merupakan interface antara layer PHY dengan layer NWK. MAC bertanggung jawab untuk menghasilkan beacon dan mensinkronisasi device dengan beacon (pada jaringan beacon-enabled) [2].
Universitas Sumatera Utara
14
Struktrur MAC Frame IEEE 802.15.4 menyatakan struktur MAC frame dalam empat bagian [2]: a. Beacon frame b. Data frame c. Acknowledge frame d. MAC command frame Beacon frame digunakan oleh koordinator untuk mengirim beacon. Beacon digunakan untuk mensinkronisasi waktu untuk semua device dalam jaringan. Data dan acknowledge frame digunakan untuk mengirim data dan menerima acknowledge dari frame penerima. MAC command dikirim menggunakan MAC command frame [2]. Beacon Frame Struktur beacon frame dapat dilihat pada gambar 2.7. Seluruh MAC frame digunakan sebagai payload pada sebuah paket PHY. Isi dari PHY payload berfungsi sebagai PHY Service Data Unit (PSDU) [2]. Dalam paket PHY,
preamble field digunakan oleh receiver untuk
sinkronisasi. Start-of-frame delimiter (SDF) mengindikasikan akhir dari SHR dan awal dari PHR. Panjang frame menyatakan jumlah oktet PHY payload (PSDU) [2]. MAC frame terdiri dari tiga bagian yaitu MAC header (MHR), MAC payload dan MAC footer (MFR). Frame control field pada MHR berisi informasi mengenai tipe frame, addressing field dan control flags lainnya. Angka yang berurutan menyatakan beacon sequence number (BSN).
Universitas Sumatera Utara
15
Addressing field menyediakan alamat sumber dan alamat destinasi. Auxilary security header bersifat tambahan untuk proses keamanan [2]. MAC payload disediakan oleh NWK layer. Superframe merupakan frame yang dibatasi oleh dua beacon frame. Superframe bersifat tambahan dalam jaringan beacon-enabled dan membantu menyatakan Guaranteed Time Slot (GTS). Field GTS pada MAC payload menyatakan apakah GTS digunakan untuk mengirim atau menerima [2].
Gambar 2.7 Struktur MAC Beacon Frame [2] Beacon frame tidak hanya digunakan untuk mensinkronisasi device dalam jaringan tetapi juga digunakan oleh koordinator untuk mengizinkan device tertentu mengetahui status data. Jika ada data pending, device akan menghubungi koordinator dan me-request data untuk dikirim ulang ke device. Hal ini disebut indirect transmission. Pending address field pada MAC payload berisi alamat device yang memiliki data pending. Setiap kali device menerima sebuah beacon, koordinator akan memeriksa pending address field untuk melihat apakah ada data yang pending untuk device atau tidak [2].
Universitas Sumatera Utara
16
Beacon payload field bersifat optional untuk NWK layer dan dikirim bersamaan dengan beacon frame. Receiver menggunakan Frame Check Sequence (FCS) field untuk mengecek error pada frame penerima [2]. Data Frame Struktur MAC data frame dapat dilihat pada gambar 2.8. Data payload disediakan oleh NWK layer. Data pada MAC payload berfungsi sebagai MAC Service Data Unit (MSDU). Field pada frame ini mirip dengan beacon frame, tetapi tidak memiliki superframe, GTS dan pending address field. MAC data frame berfungsi sebagai MAC Protocol Data Unit (MPDU) dan menjadi PHY payload [2].
Gambar 2.8 Struktur MAC Data Frame [2] Acknowledgement Frame Frame ini merupakan format MAC frame yang paling sederhana dan tidak memiliki MAC payload. Acknowledgement frame dikirim oleh device untuk mengkonfirmasi bahwa paket telah diterima [2].
Gambar 2.9 Struktur MAC Acknowledgement Frame [2]
Universitas Sumatera Utara
17
Command Frame Struktur MAC command frame dapat dilihat pada gambar 2.10. Command type field menentukan tipe perintah. Command payload berisi perintah bagi diri sendiri. Seluruh MAC command frame ditempatkan pada PHY payload sebagai sebuah PSDU [2].
Gambar 2.10 Struktur MAC Command Frame [2]
NWK Layer Layer NWK merupakan interface antara MAC dengan APL dan bertanggung jawab untuk mengatur topologi jaringan dan proses routing. Routing adalah proses memilih rute yang akan dilalui pesan untuk mencapai destinasinya. Koordinator Zigbee dan router bertanggung jawab untuk mencari dan mempertahankan rute-rute dalam jaringan [2].
APL Layer Application (APL) layer merupakan layer teratas pada Zigbee dan sebagai tempat dari objek aplikasi. Manufaktur mengembangkan objek aplikasi agar sebuah device dapat dimodifikasi untuk berbagai aplikasi.
Universitas Sumatera Utara
18
Objek aplikasi mengontrol dan mengatur layer-layer pada Zigbee. Sebuah device dapat memuat hingga 240 objek aplikasi [2]. Alliansi Zigbee menawarkan pilihan untuk menggunakan profil aplikasi dalam mengembangkan sebuah aplikasi. Sebuah profil aplikasi merupakan sebuah perjanjian pada aplikasi (format pesan khusus dan tindakan memproses). Profil aplikasi mengizinkan interoperability antara produk yang dikembangkan oleh berbagai vendor untuk aplikasi yang sama. Jika dua vendor menggunakan profil aplikasi yang sama dalam mengembangkan produknya, produk dari satu vendor akan mampu berinteraksi dengan produk yang dibuat oleh vendor lain seolah-olah keduanya dibuat oleh vendor yang sama [2].
Security Services Dalam jaringan wireless, pesan yang dikirim dapat diterima oleh semua device yang berdekatan termasuk penyusup. Ada 2 pertimbangan keamanan
dalam
jaringan
wireless.
Pertama,
data
harus
bersifat
confidentiality. Device penyusup mendapatkan informasi hanya dengan mendengarkan pesan yang dikirim. Mengenkripsikan pesan sebelum pengiriman akan menyelesaikan permasalahan confidentiality. Algoritma enkripsi memodifikasi sebuah pesan menggunakan string of bits yang dikenal sebagai security key dan hanya penerima yang tepat yang dapat membukanya. IEEE 802.15.4 mendukung penggunaan Advanced Encryption Standar (AES) untuk mengenkripsi pesan-pesan [2].
Universitas Sumatera Utara
19
Pertimbangan kedua adalah device penyusup mampu memodifikasi dan mengirim ulang pesan walaupun pesan tersebut telah dienkripsi. Dengan adanya message integrity code (MIC) dalam frame, maka penerima dapat mengetahui apakah pesan tersebut dimodifikasi sewaktu pengiriman. Proses ini disebut data authentication [2]. Salah satu keterbatasan dalam mengimplementasikan fitur keamanan pada Zigbee adalah sumber daya yang terbatas. Node-node pada Zigbee memiliki kemampuan komputasi dan ukuran memori yang terbatas. Zigbee ditargetkan untuk aplikasi low-cost dan hardware-nya tidak bersifat tamperresistant. Jika penyusup berhasil menguasai sebuah node dalam jaringan maka security key dapat diperoleh dengan mudah dari memori device. Tamper-resistant node dapat menghapus security keys jika ada tamper yang terdeteksi [2].
4.3
NS-2 NS-2 adalah sebuah software simulasi yang telah diakui di seluruh dunia
untuk mempelajari sifat dinamis suatu jaringan komunikasi. Simulasi jaringan wired atau wireless dari berbagai protokol dapat disimulasikan menggunakan software NS-2 [3]. NS-2 merupakan simulator yang memiliki dampak besar dalam pengembangan internet. NS-2 berperan sebagai alat untuk menemukan sifat protokol, mengidentifikasi masalah dan menguji solusi yang diusulkan [3]. NS-2 didistribusikan sebagai software gratis dan open source.
Universitas Sumatera Utara
20
2.3.1 Pemodelan IEEE 802.15.4 ke dalam NS-2 IEEE 802.15.4 dimodelkan ke dalam NS-2 melalui 34 file yang terdapat pada direktori ~/ns-allinone-2.35/ns-2.35/wpan. File-file tersebut diprogram oleh Jianliang Zheng dan Myung J. Lee dari The City University of New York yang bekerja sama dengan Samsung Advanced Institute of Technology. File-file pemodelan IEEE 802.15.4 terdiri atas 14 C header file (.h), 10 C++ source file (.cc) dan 10 object code file (.o). Berikut file-file pemodelan IEEE 802.15.4: 1. p802_15_4const.h Header file p802_15_4const menggunakan file “p802_15_4def.h” sebagai library. Header file ini berisi nilai maksimum untuk ukuran paket, waktu peralihan Rx-to-Tx atau Tx-to-Rx, waktu CCA (Clear Channel Assessment) bagi lapisan PHY dan nilai maksimum untuk ukuran beacon payload, frame respond time, frame retries, frame overhead, MAC frame size dan sebagainya bagi lapisan MAC. 2. p802_15_4csmaca.cc Source
file
p802_15_4csmaca
“p802_15_4csmaca.h”,
menggunakan
3
“p802_15_4const.h”
file
yaitu dan
“p802_15_4trace.h” sebagai library. Source file ini berisi prosedur CSMA/CA (Carrier Sense Multiple Access/Collision Avoidance) untuk 802.15.4 terhadap lapisan PHY dan MAC, reset, adjust time, canProceed, debug, new beacon, start, shutdown, cancel, backoff handler, RX_ON_confirm, beacon other handler, defer CCA handler dan CCA confirm.
Universitas Sumatera Utara
21
3. p802_15_4csmaca.h Header
file
p802_15_4csmaca
menggunakan
3
file
yaitu
“p802_15_4timer.h”, “p802_15_4phy.h” dan “p802_15_4mac.h” sebagai library. Header file ini memiliki kelas CsmaCA802_15_4 yang mendefinisikan struktur CSMA/CA untuk 802.15.4. Kelas CsmaCA802_15_4 memiliki 5 friend class yaitu macBackoffTimer, macWakeupTimer, macBeaconOtherTimer, macDeferCCATimer dan Mac802_15_4 yang dapat mengakses nilai reset, adjust time, start, stop, cancel, backoff handler, RX_ON_confirm, CCA_confirm dan sebagainya. 4. p802_15_4csmaca.o p802_15_4csmaca.o merupakan object code file yang dibentuk oleh p802_15_4csmaca.cc. 5. p802_15_4def.h Header file p802_15_4def menggunakan file
sebagai library. Tipe data unsigned char, unsigned short dan unsigned int didefinisikan sebagai suatu variabel baru didalam header file ini. Header file ini juga berisi nilai data rate untuk berbagai frekuensi dan nilai maksimum untuk delay propagasi. 6. p802_15_4fail.cc Source file p802_15_4fail menggunakan file “p802_15_4fail.h” sebagai library. Source file ini berisi prosedur untuk add link failure, update link failure, check addition link failure, add node failure, update node failure dan check addition node failure.
Universitas Sumatera Utara
22
7. p802_15_4fail.h Header file p802_15_4fail menggunakan file <stdlib.h> sebagai library. Header file ini berisi 2 kelas yaitu LFAILLINK yang mendefinisikan struktur
link failure
dan
NFAILLINK
yang
mendefinisikan struktur node failure. 8. p802_15_4fail.o p802_15_4fail.o merupakan object code file yang dibentuk oleh p802_15_4fail.cc. 9. p802_15_4field.h Header file p802_15_4field menggunakan file “p802_15_4def.h” sebagai library. Header file ini menspesifikasikan Frame Control, Superframe dan GTS (Guaranteed Time Slot). 10. p802_15_4hlist.cc Source file p802_15_4hlist menggunakan file <scheduler.h> dan “p802_15_4hlist.h” sebagai library. Source file ini berisi prosedur untuk add header list link, update header list link, check addition updated header list link, empty header list link dan dump header list link. 11. p802_15_4hlist.h Header file p802_15_4hlist menggunakan file “p802_15_4def.h” sebagai library. Header file ini berisi kelas HLISTLINK yang mendefinisikan struktur header list untuk setiap paket yang diterima. 12. p802_15_4hlist.o
Universitas Sumatera Utara
23
p802_15_4hlist.o merupakan object code file yang dibentuk oleh p802_15_4hlist.cc. 13. p802_15_4mac.cc Source
file
p802_15_4mac
“p802_15_4pkt.h”, “p802_15_4csmaca.h”,
menggunakan
“p802_15_4mac.h”, “p802_15_4sscs.h”,
8
file
yaitu
“p802_15_4const.h”, “p802_15_4trace.h”,
“p802_15_4fail.h” dan “p802_15_4nam.h” sebagai library. Source file ini berisi prosedur bagi MAC 802.15.4 handler untuk meng-handle event. Source file ini juga berisi prosedur bagi MAC 802.15.4 untuk inisialisasi, PD data confirm, PLME CCA confirm, PLME get confirm, PLME set confirm, MCPS data request, MCPS data indication, MLME get request dan sebagainya. 14. p802_15_4mac.h Header
file
p802_15_4mac
“p802_15_4pkt.h”,
menggunakan
“p802_15_4phy.h”,
5
file
yaitu
“p802_15_4timer.h”,
“p802_15_4hlist.h” dan “p802_15_4transac.h” sebagai library. Header file ini mendefinisikan struktur elemen koordinator PAN, task pending,
elemen MAC ACL (m_CHANNEL_ACCESS_FAILURE,
m_FRAME_TOO_LONG,
m_NO_ACK,
m_NO_BEACON,
m_NO_DATA dan sebagainya) dan MAC PIB (macAckWaitDuration, macBeaconPayLoad, macBeaconPayloadLength dan sebagainya). Header file ini juga mendefinisikan enumerasi MAC dan atribut MAC PIB. Header file ini berisi kelas Mac802_15_4 dengan 16 friend class yaitu Phy802_15_4, Mac802_15_4Handler, macTxOverTimer,
Universitas Sumatera Utara
24
macTxTimer,
macExtractTimer,
macDataWaitTimer,
macAssoRspWaitTimer,
macRxEnableTimer,
macBeaconTxTimer,
macScanTimer,
macBeaconRxTimer,
macBeaconSearchTimer, macWakeupTimer, CsmaCA802_15_4, SSCS802_15_4 dan Nam802_15_4 yang dapat mengakses nilai PD data confirm, PLME CCA confirm, MCPS data confirm, MCPS data indication, MLME reset confirm dan sebagainya. 15. p802_15_4mac.o p802_15_4mac.o merupakan object code file yang dibentuk oleh p802_15_4mac.cc. 16. p802_15_4nam.cc Source file p802_15_4nam menggunakan file “p802_15_4mac.h” dan “p802_15_4nam.h” sebagai library. Source file ini berisi prosedur untuk add mac link, update mac link, get mac link, check addition mac link, add attribute link, update attribute link, check addition atribute link, find attribute link, tampilan NAM 802.15.4, flow atribute, change playback rate, change node color, change backnode color, flash node color, change mark color, flash node mark, change label dan flash link fail. 17. p802_15_4nam.h Header file p802_15_4nam memiliki 3 kelas yaitu MACLINK yang mendefinisikan struktur link MAC, ATTRIBUTELINK yang mendefinisikan
atribut
suatu
link
dan
Nam802_15_4
yang
mendefinisikan struktur tampilan node 802.15.4 dalam NAM.
Universitas Sumatera Utara
25
18. p802_15_4nam.o p802_15_4nam.o merupakan object code file yang dibentuk oleh p802_15_4nam.cc.
19. p802_15_4phy.cc Source
file
p802_15_4phy
menggunakan
9
file
yaitu
“p802_15_4pkt.h”,
“p802_15_4phy.h”,
“p802_15_4mac.h”,
“p802_15_4sscs.h”,
“p802_15_4const.h”,
“p802_15_4timer.h”,
“p802_15_4trace.h”, “p802_15_4fail.h” dan “p802_15_4nam.h” sebagai library. Source file ini berisi prosedur bagi PHY 802.15.4 Timer untuk start, cancel dan meng-handle event. Source file ini juga berisi prosedur bagi PHY 802.15.4 untuk transmit time, PD data request, PD data indication, PLME CCA request, PLME get request, measure quality link dan sebagainya. 20. p802_15_4phy.h Header file p802_15_4phy menggunakan 3 file yaitu <packet.h>, <wireless-phy.h> dan “p802_15_4def.h” sebagai library. Header file ini mendefinisikan enumerasi PHY (p_BUSY, p_IDLE, p_RX_ON, p_TX_ON dan sebagainya), atribut PHY PIB (phyCurrentChannel, phyChannelsSupported, phyTransmitPower dan phyCCAMode) dan struktur PHY PIB. Header file ini berisi 2 kelas yaitu Phy802_15_4 dengan friend class Phy802_15_4Timer dan Phy802_15_4Timer dengan friend class Phy802_15_4 yang dapat mengakses nilai
Universitas Sumatera Utara
26
transmit time, PD data request, PD data indication, CCA handler, CCA report hander dan sebagainya. 21. p802_15_4phy.o p802_15_4phy.o merupakan object code file yang dibentuk oleh p802_15_4phy.cc.
22. p802_15_4pkt.h Header file p802_15_4pkt menggunakan 3 file yaitu <packet.h>, “p802_15_4const.h” dan “p802_15_4field.h” sebagai library. Header file ini berisi struktur panAddrInfo (informasi address untuk PAN) dan struktur
untuk
PHY
header
(lrwpan_beacon_frame,
lrwpan_data_frame, lrwpan_ack_frame, lrwpan_command_frame dan hdr_lrwpan). 23. p802_15_4sscs.cc Source file p802_15_4sscs menggunakan file “p802_15_4sscs.h” sebagai library. Source file ini berisi prosedur bagi SSCS (scan channels) 802.15.4 untuk start, cancel, handle event, status name, MCPS data confirm, MCPS data indication, start koordinator PAN dan start device. 24. p802_15_4sscs.h Header file p802_15_4sscs menggunakan file “p802_15_4def.h” dan “p802_15_4mac.h” sebagai library. Header file ini mendefinisikan struktur sscsTaskPending (scan channels untuk task yang pending). Header file ini memiliki 2 kelas yaitu SSCS802_15_4Timer dengan
Universitas Sumatera Utara
27
friend class SSCS802_15_4 dan SSCS802_15_4 dengan friend class Mac802_15_4 dan SSCS802_15_4Timer yang dapat mengakses nilai MCPS data confirm, MCPS data indication, MLME reset confirm, MLME Rx enable confirm, MLME scan confirm dan sebagainya. 25. p802_15_4sscs.o p802_15_4sscs.o merupakan object code file yang dibentuk oleh p802_15_4sscs.cc. 26. p802_15_4timer.cc Source file p802_15_4timer menggunakan 4 file yaitu <packet.h>, ,
“p802_15_4csmaca.h”
dan
“p802_15_4timer.h”
sebagai library. Source file ini berisi prosedur bagi MAC 802.15.4 timer untuk reset, start dan stop. Source file ini juga berisi prosedur bagi MAC backoff timer, MAC Beacon Other Timer, MAC Defer CCA Timer, MAC Tx Over Timer, MAC Tx Timer, MAC Extract Timer, MAC Assosiation Recipient Wait Timer, MAC Data Wait Timer, MAC Rx Enable Timer, MAC Scan Timer, MAC Beacon Tx Timer, MAC Beacon Rx Timer, MAC Beacon Search Timer dan MAC Wakeup Timer untuk meng-handle event. 27. p802_15_4timer.h Header
file
p802_15_4timer
menggunakan
3
file
yaitu
<scheduler.h>, dan <math.h> sebagai library. Header file ini memiliki 15 kelas yaitu Mac802_15_4Timer, macBackoffTimer, macBeaconOtherTimer, macDeferCCATimer, macTxOverTimer, macTxTimer,
macExtractTimer,
macAssoRspWaitTimer,
Universitas Sumatera Utara
28
macDataWaitTimer,
macRxEnableTimer,
macBeaconTxTimer, macBeaconSearchTimer
macScanTimer,
macBeaconRxTimer, dan
macWakeupTimer
yang
dapat
mengakses nilai untuk meng-handle event. 28. p802_15_4timer.o p802_15_4timer.o merupakan object code file yang dibentuk oleh p802_15_4timer.cc. 29. p802_15_4trace.cc Source file p802_15_4trace menggunakan 4 file yaitu <packet.h>, <mac.h>, <mac-802.11.h> dan “p802_15_4trace.h” sebagai library. Source file ini berisi prosedur tampilan header data 802.15.4, header ACK 802.15.4, header beacon 802.15.4, header command 802.15.4, nama objek dan sebagainya pada trace file. 30. p802_15_4trace.h Header file p802_15_4trace menggunakan file <packet.h> sebagai library. Header file ini mendefinisikan MAC subtype RTS dengan alamat 0x0B, MAC subtype CTS dengan alamat 0x0C, MAC subtype ACK dengan alamat 0x0D dan MAC subtype Data dengan alamat 0x00. 31. p802_15_4trace.o p802_15_4trace.o merupakan object code file yang dibentuk oleh p802_15_4trace.cc. 32. p802_15_4transac.cc Source
file
<scheduler.h>,
p802_15_4transac
menggunakan
“p802_15_4transac.h”
dan
3
file
yaitu
“p802_15_4pkt.h”
Universitas Sumatera Utara
29
sebagai library. Source file ini berisi prosedur untuk add device link, update device link, number device link, check addition device link, empty device link, dump device link, add transac link, update transac link, number transac link, check addition transac link, empty transac link dan dump transac link. 33. p802_15_4transac.h Header file p802_15_4transac menggunakan 4 file yaitu <packet.h>, “p802_15_4def.h”, “p802_15_4const.h” dan “p802_15_4field.h” sebagai library. Header file ini memiliki 2 kelas yaitu DEVICELINK yang mendefinisikan struktur link antar device dan TRANSACLINK yang mendefinisikan struktur link yang sedang bertransaksi (link yang sedang dilalui data). 34. p802_15_4transac.o p802_15_4transac.o merupakan object code file yang dibentuk oleh p802_15_4transac.cc.
2.3.2
Parameter-parameter Sistem Model Propagasi Radio Model propagasi radio adalah suatu formula matematika untuk
memprediksi besar kekuatan sinyal dari setiap paket yang diterima. Hasil perhitungan dari model propagasi radio akan dibandingkan dengan nilai receiving threshold yang tertera pada lapisan PHY setiap node. Paket dengan kuat sinyal yang lebih kecil dari receiving threshold akan ditandai sebagai error dan dibuang oleh lapisan MAC (Medium Access Control) [4].
Universitas Sumatera Utara
30
Ada 3 model propagasi radio yang di-support oleh NS-2 yaitu: 1. Free space model Model propagasi ini mengasumsikan bahwa kondisi propagasi yang ideal berupa satu jalur LOS (Line of Sight) antara pemancar dan penerima [4]. 2. Two-ray ground reflection model Model propagasi ini memperhitungkan jalur LOS dan jalur ground reflection [4]. 3. Shadowing model Model propagasi free space dan two-ray memprediksi kekuatan sinyal dari paket yang diterima sebagai suatu fungsi yang bersifat deterministik
terhadap
jarak.
Model
propagasi
shadowing
memprediksi besar kekuatan sinyal dari paket data yang diterima sebagai suatu random variable pada jarak tertentu dikarenakan efek propagasi multipath yang dikenal sebagai fading effects [4]. Model propagasi shadowing terbagi atas 2 bagian. Bagian pertama dikenal sebagai path loss model yang memprediksi besar rata-rata kekuatan sinyal dari paket yang diterima pada jarak tertentu. Berikut persamaan path loss model [4]: Pr(d 0) d Pr(d ) d 0
......... .......................................... 2.1
Keterangan: Pr(d0)
= besar kekuatan sinyal dari paket yang diterima
pada jarak referensi d0 (W)
Universitas Sumatera Utara
31
Pr(d)
= besar kekuatan sinyal dari paket yang diterima
pada jarak d (W) d
= jarak (m)
d0
= jarak referensi (m)
𝛽
= path loss exponent Tabel 2.2 Beberapa nilai path loss exponent 𝛽 [4] β
Lingkungan Free Space
2
Shadowed urban area
2.7 - 5
Dalam
Line of sight
1.6 – 1.8
gedung
Obstructed
4-6
Outdoor
Persamaan path loss model biasanya dihitung dengan satuan decibel (dB) sehingga persamaan (3.1) diubah menjadi [4]:
Pr(d 0) d Pr(d ) 10 log d 0 .................................. 2.2 Bagian
kedua
dari
model
propagasi
shadowing
memperlihatkan variasi dari kekuatan sinyal dari paket yang diterima pada jarak tertentu. Bagian kedua dari model propagasi shadowing merupakan distribusi Gaussian dengan satuan dB (Decibel) dan simbol XdB [4].
Universitas Sumatera Utara
32
Dengan menggabungkan kedua persamaan diatas maka kita mendapatkan rumus overall shadowing model sebagai berikut [4]:
Pr(d 0) d Pr(d ) 10 log d 0 XdB ............................. 2.3 Tabel 2.3 Beberapa nilai shadowing deviation 𝞼dB [4] Lingkungan
𝞼dB (dB)
Lingkungan
𝞼dB (dB)
Outdoor
4 - 12
Factory, line of sight
3-6
Office, hard partition
7
Factory, obstructed
6.8
Office, soft partition
9.6
Network Interface Network interface berfungsi sebagai interface hardware yang digunakan oleh node untuk mengakses channel. Network interface yang digunakan dalam NS-2 adalah 914 MHz Lucent WaveLan DSSS (Direct Sequence Spread Spectrum) radio interface.
Receiving Threshold Nilai receiving threshold diatur dalam layer PHY. Receiving threshold berperan penting dalam proses penerimaan paket data.
Receive Rate Noise dalam NS-2 digambarkan dengan receive rate. Receive rate merupakan ukuran keberhasilan receiver dalam menerima paket data. Nilai dari receive rate berkisar antara 0-1. Apabila receive rate bernilai 0.8 maka 80% paket data berhasil diterima oleh receiver. 20% paket data yang tidak
Universitas Sumatera Utara
33
berhasil diterima oleh receiver menyatakan seberapa besar noise yang terdapat pada sistem komunikasi tersebut [4].
Antena Fungsi antena adalah mengubah sinyal listrik menjadi sinyal elektromagnetik, lalu meradiasikannya. Dan sebaliknya, antena juga dapat berfungsi untuk menerima sinyal elektromagnetik dan mengubahnya menjadi sinyal listrik. Berdasarkan pola radiasinya antena dibedakan menjadi 2 yaitu: 1. Antena Directional / Unidirectional Antena directional merupakan jenis antena yang memiliki sudut pemancaran yang kecil sehingga daya yang dipancarkan oleh antena lebih terarah dan relatif mampu menjangkau jarak yang cukup jauh. Antena directional mengirim dan menerima sinyal radio hanya pada satu arah. 2. Antena Omni-Directional Antena omni-directional mempunyai pola radiasi sinyal 360o dalam bidang tegak lurus berdasarkan medan magnetnya. Antena omni-directional mengirim dan menerima sinyal radio dari semua arah secara sama. Antena omni-directional banyak digunakan dalam wireless sensor networks (WSNs) karena pola radiasinya 360o arah horizontal sehingga tidak ada sinyal radio yang terbuang percuma ke tanah atau langit.
Universitas Sumatera Utara
34
Interface Queue Antrian dalam jaringan merupakan sekumpulan paket data yang menunggu untuk ditransmisikan. Dibutuhkan suatu algoritma untuk mengatur antrian pada jaringan. Beberapa algoritma antrian yang di-support oleh NS-2 yaitu: 1. Drop Tail Drop Tail merupakan algoritma pengaturan antrian yang sangat sederhana. Setiap paket diperlakukan sama. Ketika antrian telah mencapai kapasitas maksimal, semua paket yang tiba di-drop sampai antrian memiliki ruang yang cukup untuk menerima kembali [5]. 2. Random Early Detection (RED) RED merupakan algoritma pengaturan antrian yang lebih rumit. RED menghitung nilai average queue length setiap paket data dan membandingkannya dengan nilai queue length threshold. RED mengambil tindakan untuk memasukkan paket dalam antrian atau drop paket berdasarkan hasil perbandingan tersebut [5]. PriQueue digunakan dalam sistem antrian NS-2. PriQueue merupakan prioritas antrian yang diberikan kepada paket-paket protokol routing sehingga paket-paket tersebut diposisikan di awal antrian.
Link Layer (LL) Setiap paket yang akan dikirim atau diterima pasti melalui LL. Dalam LL terdapat modul ARP (Address Resolution Protocol) yang digunakan
Universitas Sumatera Utara
35
dalam proses pengiriman data. ARP merupakan suatu protokol untuk memetakan IP address ke alamat fisik (dikenal dengan istilah MAC address).
Protokol Routing Protokol routing yang digunakan Zigbee adalah AODV (Ad hoc OnDemand Distance Vector). AODV merupakan algoritma berdasarkan permintaan, yang berarti hanya membangun rute antar node apabila ada permintaan dari source node. Rute dipertahankan selama masih dibutuhkan oleh source node. Ketika source node hendak mengirim data ke node lain dan belum memiliki rute, maka source node mem-broadcast paket RREQ (route request) dalam jaringan. Node yang menerima paket RREQ akan memperbaharui paket dengan informasi tambahan (IP address, current sequence number dan broadcast ID) dan mengirim pointer kembali ke source node. Node yang memiliki destinasi yang dikehendaki source node akan mengirim RREP (route reply) [6].
Internet Protocol (IP) Traffic Ada 2 jenis IP Traffic yaitu TCP (Transmission Control Protocol) dan UDP (User Datagram Protocol). Tabel 2.4. Perbandingan antara TCP dan UDP [7] TCP Koneksi
Connection-oriented protocol
UDP Connectionless protocol
Universitas Sumatera Utara
36
Cocok digunakan untuk aplikasi yang memerlukan Kegunaan
daya tahan tinggi dan waktu transmisi tidak begitu
Cocok digunakan untuk aplikasi yang memerlukan transmisi cepat dan efisien seperti sensor
penting
UDP umumnya lebih cepat Kecepatan
TCP umumnya lebih lambat
dari TCP karena tidak
dari UDP
adanya error-checking pada paket
Parameter Dasar Parameter dasar suatu sistem simulasi jaringan antara lain:
Jarak
Area
Waktu
Jumlah Node
Event
Pengaturan parameter dasar sistem yang baik membuat simulasi bersifat realistis dan dapat dipertanggungjawabkan.
2.3.3
Parameter-parameter Simulasi End-to-end Delay End-to-end delay merupakan waktu yang dibutuhkan oleh paket data
untuk mencapai destinasi. End-to-end delay dihitung dari mode ke koordinator PAN dengan satuan detik. End _ to _ end _ delay (s) Re ceived _ time(s) Sent _ time(s) .... 2.4
Average _ end _ to _ end _ delay ( s)
End _ to _ end _ delay (s) . 2.5 banyak _ paket
Universitas Sumatera Utara
37
Throughput Throughput merupakan besar aliran data yang diterima tiap detik (kbit/s). Throughput dihitung dengan membagikan besar ukuran paket data yang diterima dengan end-to-end delay. Packet _ size(kbit) kbit .................... 2.6 Throughput s End _ to _ end _ delay ( s)
kbit Average _ throughput s
kbit s ................ 2.7 banyak _ paket
Throughput
Packet Loss Packet Loss menunjukkan banyaknya paket data yang hilang dalam suatu jaringan. Packet Loss dihitung dengan membagikan packet dropped dengan packet sent. Packet _ dropped Packet _ sent Packet _ received ......... 2.8
Packet _ loss(%)
Packet _ dropped x100% ....................... 2.9 Packet _ sent
Universitas Sumatera Utara