Kata Pengantar Penyusun memanjatkan puji syukur kepada Allah SWT yang yang telah melimpahkan Rahmat dan Hidayah-Nya, sehingga penyusun dapat menyelesaikan e-book yang berjudul Data – Data – link link layer of OSI layer. Penyusunan e-book ini berisi tentang pengertian, apa itu data – link – link layer, device – device – device device yang ada pada data-link, dll lebih banyak lagi yang lain nya. Ebook yang jauh dari kesempurnaan ini kami sebagai penyusun meminta maaf apabila ada
kesalahan atau ketidak lengkapan sebuah materi pada e-book. Penyusun pun berterimakasih pada situs – situs dan buku – buku yang telah membantu dalam penyusunan e-book ini. E-book yang berjudul Data – Data – link link layer of OSI laye ini terbentuk melalui berbagai kesulitan tetapi buku ini juga memiliki tujuan beberapanya adalah ingin membuat anda sebagai pembaca mengetahui tentang Data-Link layer dari pengertian sampai device-device di dalam nya dan masih banyak lagi lebih dari pada itu. karena itu penyusun berharap e-book ini dapat bermanfaat bagi anda, penyusun, pembaca, bangsa, dan Negara.
Malang, 31 Mei 2010 Penyusun
Respect to learn science
1
DAFTAR ISI Kata Pengantar ............................................ .................................................................. ............................................ ................................... ............. i Daftar ISI ........................................... ................................................................. ............................................ ............................................ ........................ii
BAB I. PENDAHULUAN............................................ .................................................................. ...................................... ................ 3
1.0 Data-Link layer ...................................................... ............................................................................ .............................. ........ 4 1.1 Layanan Layanan yang disediakan bagi lapisan jaringan................................... 9 1.2 Framing ...................................................... ............................................................................. ........................................ ................. 11 1.3 Kontrol Aliran (Flow control)........................................... ............................................................ ................. 13
BAB II. Network Components ............................................. ................................................................... ............................ ...... 25 25
2.1 Bridge....................................... ............................................................. ............................................ .................................... .............. 25 2.2 Switch ............................................. .................................................................... ............................................. ............................ ...... 27 2.2.1 Kelebihan Switch ..................................... ........................................................... .................................... .............. 28 2.2.2 Perancangan Jaringan Switch ............................................ ...................................................... .......... 29 2.3 NIC (network interface i nterface card) ............................................ ............................................................. ................. 34
BAB III. ARP Dan RARP .......................................... ................................................................ ....................................... ................. 37
3.1 Address Resolution Protocol (ARP) ( ARP) ................................. .................................................. ................. 37 3.1.1 CARA KERJA ARP .......................................... ................................................................. ......................... .. 41 3.1.2 KELEMAHAN ARP ......................................... ............................................................... ......................... ... 42 3.1.2.1 ARP SPOOFING ............................................ ................................................................. ..................... 44 44 3.2 Reverse Address Resolution Protocol (RARP) ................................. 48
DAFTAR PUSTAKA .......................................... ................................................................ ............................................ ......................... ... 51
Respect to learn science
2
BAB I Pendahuluan OSI LAYER OSI (Open System Interconnection ) merupakan sebuah model arsitektural jaringan
yang dikembangkan oleh badan International Orgenization Standardization (ISO) di Eropa pada tahun 1977. Model OSI ini digunakan sebagai standard umum untuk membangun pemodelan arsitektur jaringan komputer secara konseptual. Model OSI ini terdiri dari 7 lapisan yang disebut dengan layer. Model Layer OSI
Terdapat 7 layer pada model OSI. Setiap layer bertanggungjawwab secara khusus pada proses komunikasi data. Misal, satu layer bertanggungjawab untuk membentuk koneksi antar perangkat, sementara layer lainnya bertanggungjawab untuk mengoreksi terjadinya ―error‖ selama proses transfer data berlangsung. Model Layer OSI dibagi dalam dua group:
Respect to learn science
3
―upper layer‖ dan ―lower layer‖. ―Upper layer‖ focus pada applikasi pengguna dan bagaimana file direpresentasikan di komputer. Untuk Network Engineer, bagian utama yang menjadi perhatiannya adalah pada ―lower layer‖. Lower layer adalah layer adalah intisari komunikasi data melalui jaringan aktual. ―Open‖ dalam OSI adalah untuk menyatakan model jaringan yang melakukan interkoneksi tanpa memandang perangkat keras/ ―hardware‖ yang digunakan, sepanjang software komunikasi sesuai dengan standard. Hal ini secara tidak langsung menimbulkan ―modularity‖ (dapat dibongkar pasang).
1.0 LAYER DATA LINK Lapisan data-link (data link layer) adalah lapisan kedua dari bawah dalam model OSI, yang dapat melakukan konversi frame-frame jaringan yang berisi data yang dikirimkan menjadi bit-bit mentah agar dapat diproses oleh lapisan fisik. Lapisan ini merupakan lapisan yang akan melakukan transmisi data antara perangkat-perangkat jaringan yang saling berdekatan di dalam sebuah wide area network (WAN), atau antara node di dalam sebuah segmen local area network (LAN) yang sama. Lapisan ini bertanggungjawab dalam membuat frame, flow control, koreksi kesalahan dan pentransmisian ulang terhadap frame yang dianggap gagal. MAC address juga diimplementasikan di dalam lapisan ini. Selain itu, beberapa perangkat seperti Network Interface Card (NIC), switch layer 2 serta bridge jaringan juga beroperasi di sini.
Lapisan data-link menawarkan layanan pentransferan data melalui saluran fisik. Pentransferan data tersebut mungkin dapat diandalkan atau tidak: beberapa protokol lapisan data-link tidak mengimplementasikan fungsi Acknowledgment untuk sebuah frame yang sukses diterima, dan beberapa protokol bahkan tidak memiliki fitur pengecekan kesalahan transmisi (dengan menggunakan checksumming). Pada kasus-kasus tersebut, fitur-fitur acknowledgment dan pendeteksian kesalahan harus diimplementasikan pada lapisan yang lebih tinggi, seperti halnya protokol Transmission Control Protocol (TCP) (lapisan transport).
Tugas utama dari data link layer adalah sebagai fasilitas transmisi data mentah dan mentransformasi data tersebut ke saluran yang bebas dari kesalahan transmisi. Sebelum diteruskan ke Network Layer, lapisan data link melaksanakan tugas ini dengan memungkinkan pengirim memecah-mecah data input menjadi sejumlah data frame (biasanya
Respect to learn science
4
berjumlah ratusan atau ribuan byte). Kemudian lapisan data link mentransmisikan frame tersebut secara berurutan dan memproses acknowledgement frame yang dikirim kembali oleh penerima. Karena lapisan fisik menerima dan mengirim aliran bit tanpa mengindahkan arti atau arsitektur frame, maka tergantung pada lapisan data-link-lah untuk membuat dan mengenali batas-batas frame itu. Hal ini bisa dilakukan dengan cara membubuhkan bit khusus ke awal dan akhir frame.Gambar 1.10 memperlihatkan layer Data Link dengan spesifikasi Ethernet dan IEEE. Perhatikan bahwa standar IEEE 802.2 digunakan bersamasama dan menambah fungsi standar IEEE yang lain.
Penting untuk dimengerti bahwa router, yang bekerja di Layer Network tidak peduli sama sekali tentang dimana lokasi suatu host berada. Router hanya peduli pada dimana network tersebut berada, dan cara terbaik untuk menjangkaunya termasuk yang remote. Router akan menjadi sangat obsesif dalam menangani network. Data Link yang bertanggung jawab pada identifikasi sesungguhnya sesungguhnya dari tiap peralatan yang ada di network.
Untuk sebuah host mengirim paket ke sebuah host lain di network local ataupun mengirimkan paket melewati router, layer Data Link menggunakan pengalaman perangkat keras. Setiap saat sebuah paket terkirim melewati router-router, paket tersebut akan dibungkus dengan informasi control layer Data Link, tetapi informasi tersebut akan dilepas di router penerima yang tertinggal adalah paket asli. Proses pembungkusan (framing) ini akan berlanjut di setiap hop sampai paket akhirnya terkirim ke host penerima yang sebenarnya. Paket itu sendiri tidak pernah berubah sepanjang rute, ia hanya dibungkus dengan semacam informasi control yang diperlukannya untuk melalui berbagai media yang b erbeda.
Respect to learn science
5
Tujuan utama dari layer Data Link adalah:
Format data kedalam frames untuk transmission b. Memberikan error notifications c. Memberikan control aliran d. Specifykasi topology jaringan logical dan metoda-2 media access a.
Layer Data Link memiliki dua buah sublayer : a. Media Access Control (MAC) 802.3
Sublayer Media Access Control adalah sublayer pertama atau sublayer bawah dari layer Data Link.sublayer memecah data manjadi frame sebelum ditransmisikan, dan memegang address fisikal (MAC address) untuk address jaringan. Piranti seperti Switches dan bridges menggunakan address Data Link untuk mengarahkan data user melalui jaringan menuju ke host tujuan. Sublayer MAC menangani tiga macam tugas berikut ini: 1. Addressing Physical Physical Device, identifikasikan identifikasikan piranti-2 hardware hardware khusus. Semua Semua piranti di jaringan harus mempunyai address fisikal yang unik. Untuk jaringan-2 Untuk jaringan-2 LAN, LAN , address fisik ditanamkan kedalam interface card (NIC). Address MAC adalah address hardware 48-bit yang tampak sebagai nomor hexadecimal 12-digit. 2. Media Access, metoda media access memerintahkan bagaimana piranti jaringan menentukan kapan harus mengirim sinyal melalui jaringan, apa yang harus dilakukan jika ada dua piranti jaringan mau mengirim paket pada saat yang bersamaan. Ada tiga macam metoda access media yang digunakan dalam jaringan komputer. a. Contention (semua piranti mempunyai akses yang sama) b. Token-passing (piranti yang mempunyai Token akan mendapatkan akses) c. Polling (piranti-2 ditentukan nomor urutnya) 3. Topology Logical, menjelaskan bagaimana piranti-2 berjalan dari piranti ke piranti. Topology fisik tertentu dapat mentransmisikan messages dengan lebih dari satu cara, sehingga sesungguhnya anda bisa menggunakan suatu topology logical yang berbeda dari topologi physical dari jaringan anda. Ada tiga macam t opology yang mungkin dibentuk:
Respect to learn science
6
a. Physical Bus, Logical Bus b. Physical Ring, Logical Ring c. Physical Star, Logical Bus d. Physical Star, Logical Ring e. Physical Star, Logical Star b. Logical Link Control (LLC) 802.2
Bertanggung jawab untuk mengidentifikasi protokol-protokol layer Network dan kemudian melakukan enkapsulasi terhadapnya. Header LLC memberitahukan ke layer Data Link tentang apa yang perlu dilakukan terhadap paket, begitu frame diterima. Cara kerja sebagai berikut: 1. Deteksi Error, saat frame dan bits ditransmisikan melalui jaringan, error bisa saja terjadi. Error komunikasi bisa masuk dalam salah satu dari dua category berikut: a. Paket yang diharapkan tidak juga nyampai. b. Paket diterima, akan tetapi berisi data yang corrupt (rusak atau cacat) Paket-2 yang hilang bisa diidentifikasi melalui nomor urut, dan koreksi dilakukan terkait dengan fitur pengendali aliran. Data rusak dalam suatu paket ditentukan menggunakan satu dari dua metoda berikut: parity bits dan Cyclic Redundancy Check (CRC). Parity bit digunakan dengan transmisi asynchronous sederhana. Error dideteksi dengan menambahkan sebuah bit extra yang disebut bit parity, di setiap ujung frame. Bit tambahan ini menjamin bahwa jumlah bit 1 yang ganjil dan yang genap dikirim di setiap transmisi. Pemeriksaan error dilakukan dengan menambahkan jumlah bit 1 kedalam frame. Jika jumlahnya tidak ganjil (atau tidak genap jika dipakai parity genap) maka dipastikan terjadi suatu error
Respect to learn science
7
Layer Data Link - Parity Bit
Cyclic Redundancy Check (CRC) adalah komputasi matematis yang digunakan untuk mendeteksi error dalam komunikasi synchronous. Piranti pengirim menerapkan kalkulasi kepada data yang akan ditransmisikan. Hasilnya ditambahkan kepada paket. Begitu data diterima oleh piranti penerima maka ia melakukan metoda yang sama. Jika data CRC ini berbeda, maka dianggap bahwa suatu error terjadi saat transmisi. Gambar berikut ini menjelaskan gambaran sederhana proses diatas, proses sesungguhnya sebenarnya sangat kompleks.
Layer Data Link -CRC Check
2. Mengendalikan aliran, untuk mencegah transmisi data menjadi mampet atau membanjiri si penerima, sublayer LLC memberikan pengendalian aliran yang memperlambat kecepatan aliran pengiriman data. Ada tiga macam metoda:
Respect to learn science
8
a. Acknowledgment, merupakan sinyal pemberitahuan kepada pengirim bahwa paket diterima. Jika sinyal pemberitahuan ini tidak diterima, maka paket dianggap error, dan pengirim akan mengulang pengiriman paket tersebut. b. Buffering, adalah penyimpanan sementara disisi penerima, jika paket datang, maka paket disimpan sementara di buffering sampai data bisa diproses. Jika paket datang lebih cepat dari paket yang bisa diproses, maka buffer b uffer akan tumpah. Berarti data error, dan data perlu dikirim ulang. Cara pengontrolan di sisi penerima bisa dengan sinyal message ―not ready‖. c. Windowing, merupakan methoda untuk memaksimalkan data transfer, dan meminimalkan kehilangan data. Sebelum data transfer, pengirim dan penerima melakukan negosiasi lebar window yang akan dipakai yang menunjukkan jumlah paket yang bisa dikirim dengan satuan waktu tertentu dengan satu sinyal acknowledgement. Beberapa protocol menggunakan lebar windows yang dipakai secara dinamis tergantung kondisi kehandalan media transfer. 3. mendukung Multi-protocol, bertindak sebagai buffer atau sebagai penengah antara protocol-2 yang tergantung media – pada bagian bawah, dan protocol-2 layer network bagian atas. a. Menjalankan beberapa protocol layer-2 diatasnya pada piranti yang sama dan pada saat yang sama. b. Menjalankan protocol-2 yang sama layer diatasnya pada media transmisi yang berbeda.
1.1 Layanan yang disediakan bagi lapisan jaringan Fungsi dari lapisan data link adalah menyediakan layanan bagi lapisan jaringan. Layanannyaa yang penting adalah pemindahan data dari lapisan jaringan pada node sumber ke Layananny lapisan jaringan di pada node yang dituju. Tugas lapisan data link adalah menstransmisikan bit-bit ke komputer yang dituju, sehingga bit-bit tersebut dapat diserahkan ke lapisan jaringan. Berkas:Heru1.GIF
Respect to learn science
9
Transmisi aktual yang mengikuti lintasan akan lebih mudah lagi jika dianggap sebagai proses dua lapisan data-link yang berkomunikasi menggunakan protokol data link (Gambar 2). Lapisan data-link dapat dirancang sehingga mampu menyediakan bermacam-macam layanan. Layanan aktual yang ditawarkan suatu sistem akan berbeda dengan layanan sistem yang lainnya. Tiga layanan yang disediakan adalah sebagai berikut : 1. layanan unacknowledged connectionles connectionlesss 2. layanan acknowledged connectionless 3. layanan acknowledged connection-oriented Setiap layanan yang diberikan data link layer la yer akan dibahas satu persatu: 1. Layanan unacknowledged connectionless
Layanan jenis ini mempunyai arti di mana node sumber mengirimkan sejumlah frame ke node lain yang dituju dengan tidak memberikan acknowledgment bagi diterimanya frameframe tersebut. Tidak ada koneksi yang dibuat baik sebelum atau sesudah dikirimkannya frame. Bila sebuah frame hilang sehubungan dengan adanya noise, maka tidak ada usaha untuk memperbaiki masalah tersebut di lapisan data-link. Jenis layanan ini cocok bila laju kesalahan (error rate) sangat rendah, sehingga recovery bisa dilakukan oleh lapisan yang lebih tinggi. Sebagian besar teknologi [LAN] meggunakan layanan unacknowledgment connectionlesss pada lapisan data link. connectionles 2. Layanan acknowledged connectionless
Pada layanan jenis ini berkaitan dengan masalah reabilitas. Layanan ini juga tidak menggunakan koneksi, akan tetapi setiap frame dikirimkan secara independen dan secara acknowledged. acknowledge d. Dalam hal ini, i ni, si pengirim akan mengetahui apakah frame yang dikirimkan ke komputer tujuan telah diterima dengan baik atau tidak. Bila ternyata belum tiba pada interval waktu yang telah ditentukan, maka frame akan dikirimkan kembali. Layanan ini akan berguna untuk saluran unreliable, seperti sistem nirkabel.
3. Layanan acknowledged connection-oriented
Respect to learn science
10
Layanan jenis ini merupakan layanan yang paling canggih dari semua layanan yang disediakan oleh lapisan data-link bagi lapisan jaringan. Dengan layanan ini, node sumber dan node tujuan membuat koneksi sebelum memindahkan datanya. Setiap frame yang dikirim tentu saja diterima. Selain itu, layanan ini menjamin bahwa setiap frame yang diterima benarbenar hanya sekali dan semua frame diterima dalam urutan yang benar. Sebaliknya dengan layanan connectionless, mungkin saja hilangnya acknowledgment akan meyebabkan sebuah frame perlu dikirimkan beberapa kali dankan diterima dalam beberapa kali juga. Sedangkan layanan connection-oriented menyediakan proses-proses lapisan jaringan dengan aliran bit yang bisa diandalkan. Pada saat layanan connection oriented dipakai, pemindahan data mengalami tiga f ase. Pada fase pertama koneksi ditentukan dengan membuat kedua node menginisialisasi variabelvariabel dan counter-counter yang diperlukan untuk mengawasi frame yang mana yang diterima dan yang belum diterima. Dalam fase kedua, satu frame atau lebih mulai ditransmisikan dari node sumber ke node tujuan. Pada fase ketiga, koneksi dilepaskan, pembebasan variabel, buffer dan sumber daya yang lain yang dipakai untuk menjaga berlangsungnyaa koneksi. berlangsungny
1.2 Framing Untuk melayani lapisan jaringan, lapisan data-link harus menggunakan layanan yang disediakan oleh lapisan fisik. Apa yang dilakukan lapisan fisik adalah menerima aliran bit -bit mentah dan berusaha untuk mengirimkannya ke tujuan. Aliran bit ini tidak dijamin bebas dari kesalahan. Jumlah bit yang diterima mungkin bisa lebih sedikit, sama atau lebih banyak dari jumlah bit yang ditransmisikan dan juga bit-bit itu memiliki nilai yang berbeda-beda. Bila diperlukan, lapisan data-link juga dapat diserahi tanggung jawab untuk mendeteksi dan mengoreksi kesalahan yang terjadi. Pendekatan yang umum dipakai adalah lapisan data link memecah aliran bit menjadi frame-frame dan menghitung nilai checksum untuk setiap frame-nya. Memecah-mecah aliran bit menjadi frame-frame lebih sulit dibandingkan dengan apa yang kita kira. Untuk memecah-mecah memecah-mecah aliran bit ini, digunakanlah metode-metode khusus. Ada empat buah metode yang dipakai dalam pemecahan bit menjadi frame, yaitu :
Respect to learn science
11
1. Karakter penghitung 2. pemberian karakter awal dan akhir, dengan pengisian karakter 3. Pemberian flag awal dan akhir, dengan pengisian bit 4. Pelanggaran pengkodean Physical layer Berikut ini akan disajikan pembahasan mengenai metode-metode ini: 1. Karakter Penghitung
Metode ini menggunakan sebuah field pada header untuk menspesifikasi jumlah karakter di dalam frame. Ketika data link layer pada komputer yang dituju melihat karakter penghitung, maka data link layer akan mengetahui jumlah karakter yang mengikutinya dan kemudian juga akan mengetahui posisi ujung framenya. Teknik ini bisa dilihat pada gambar 3 di bawah ini, dimana ada empat buah frame yang masing-masing berukuran 5,5,8 dan 8 karakter. Masalah yang akan timbul pada aliran karakter ini apabila terjadi error transmisi. Misalnya, bila hitungan karakter 5 pada frame kedua menjadi 7 (Gambar 4), maka tempat yang dituju tidak sinkron dan tidak akan dapat mengetahui awal frame berikutnya. Oleh karena permasalahan ini, metode hitungan karakter sudah jarang dilakukan. 2. Pemberian Karakter Awal dan Akhir
Metode yang kedua ini mengatasi masalah resinkronisasi setelah terjadi suatu error dengan membuat masing-masing frame diawali dengan deretan karakter DLE, STX, ASCII dan diakhiri dengan DLE, ETX. DLE adalah Data Link Escape, STX adalah Start of Text, ETX adalah End of Text. Dalam metode ini, bila tempat yang dituju kehilangan batas-batas frame, maka yang perlu dilakukan adalah mencari karakter-karakter DLE, STX, DLE dan ETX. Masalah yang akan terjadi pada metode ini adalah ketika data biner ditransmisikan. Karakter-karakter DLE, STX, DLE dan ETX yang terdapat pada data akan mudah sekali mengganggu framing. Salh satu car untuk mengatasi masalah ini adalah dengan membuat data link layer, yaitu pengirim menyisipkan sebuah karajter DLE ASCII tepat sebeum
Respect to learn science
12
karakter DLE pada data. Teknik ini disebut character stuffing (pengisian karakter) dan cara pengisiannya pengisiannya dapat dilihat pada gambar 5 3. Pemberian Flag Awal dan akhir
Teknik baru memungkinkan frame data berisi sejumlah bit dan mengijinkan kod karakter dengan sejumlah bit per karakter. Setip frame diawali dan diakhiri oleh pola bit khusus, 01111110, yang disebut byte flag. Kapanpun data link layer pada pengirim menemukan lima buah flag yang berurutan pada data, maka data link layer secara otomatis mengisikan sebuah bit 0 ke aliran bit keluar. Pengisian bit analog dengan pengisian karakter, dimana sebuah DLE diisikan ke aliran karakter keluar sebelum DLE pada data (Gambar 6). Ketika penerima melihat lima buah bit 1 masuk yang berurutan, yang diikuti oleh sebuah bit 0, maka penerima secara otomatis menghapus bit 0 tersebut. Bila data pengguna berisi pola flag, 01111110, maka flag ini ditrnsmisikan kembali sebagai 011111010 tapi akan disimpan di memori penerima sebagai 01111110. 4. Pelanggaran Pengkodean Physical Layer
Metode yang terakhir hanya bisa digunakan bagi jaringan yang encoding pada medium fisiknya mengandung pengulangan. Misalnya, sebagian LAN melakukan encode bit 1 data dengan menggunakan 2 bit fisik. Umumnya, bit 1 merupakan pasangan tinggi rendah dan bit 0 adalah pasangan rendah tinggi. Kombinasi pasangan tinggi-tinggi dan rendahrendah tidak digunakan bagi data.
1.3 Kontrol Aliran ( Flow control) Flow control adalah suatu teknik untuk menjamin bahwa sebuah stasiun pengirim tidak membanjiri stasiun penerima dengan data. Stasiun penerima secara khas akan menyediakan suatu buffer data dengan panjang tertentu. Ketika data diterima, dia harus mengerjakan beberapa poses sebelum dia dapat membersihkan buffer dan mempersiapkan penerimaan data berikutnya.
Respect to learn science
13
Bentuk sederhana dari kontrol aliran dikenal sebagai stop and wait, dia bekerja sebagai berikut. Penerima mengindikasikan bahwa dia siap untuk menerima data dengan mengirim sebual poll atau menjawab dengan select. Pengirim kemudian mengirimkan data. Flow control ini diatur/dikelola oleh Data Link Control (DLC) atau biasa disebut sebagai Line Protocol sehingga pengiriman maupun penerimaan ribuan message dapat terjadi dalam kurun waktu sesingkat mungkin. DLC harus memindahkan data dalam lalu lintas yang efisien. Jalur komunikasi harus digunakan sedatar mungkin, sehingga tidak ada stasiun yang berada dalam kadaan idle sementara stasiun yang lain saturasi dengan lalu lintas yang berkelebihan. Jadi flow control merupakan bagian yang sangat kritis dari suatu jaringan. Berikut ini ditampilkan time diagram Flow control saat komunikasi terjadi pada kondisi tanpa error dan ada error. Mekanisme Flow control yang sudah umum digunakan adalah Stop and Wait dan Sliding window, berikut ini akan dijelaskan kedua mekanisme tersebut. 1. Stop and wait
Protokol ini memiliki karakteristik dimana sebuah pengirim mengirimkan sebuah frame dan kemudian menunggu acknowledgment sebelum memprosesnya lebih lanjut. Mekanisme stop and wait dapat dijelaskan dengan menggunakan gambar 8, dimana DLC mengizinkan sebuah message untuk ditransmisikan (event 1), pengujian terhadap terjadinya error dilakukan dengan teknik seperti VCR (Vertical Redundancy Check) atau LRC (Longitudinal Redundancy Check) Check) terjadi pada even 2 dan pada saat yang tepat sebuah ACK atau NAK dikirimkan kembali untuk ke stasiun pengirim (event 3). Tidak ada messages lain yang dapat ditransmisikan selama stasiun penerima mengirimkan kembali sebuah jawaban. Jadi istilah stop and wait diperoleh dari proses pengiriman message oleh stasiun pengirim, menghentikan transmisi berikutnya, dan menunggu jawaban. Pendekatan stop and wait adalah sesuai untuk susunan transmisi half duplex, karena dia menyediakan untuk transmisi data dalam dua arah, tetapi hanya dalam satu arah setiap saat. Kekurangan yang terbesar adalah disaat jalur tidak jalan sebagai akibat dari stasiun yang dalam keadaan menunggu, sehingga kebanyakan DLC stop and wait sekarang menyediakan lebih dari satu terminal yang on line. Terminal-terminal tetap beroperasi dalam susunan yang sederhana. Stasiun pertama atau host sebagai penaggung jawab untuk peletakkan message
Respect to learn science
14
diantara terminal-terminal (biasanya melalui sebuah terminal pengontrol yang berada di depannya) depannya) dan akses pengontrolan untuk hubungan komunikasi. Urutan sederhana ditunjukkan pada gambar 8 dan menjadi masalah yang serius ketika ACK atau NAK hilang dalam jaringan atau dalam jalur. Jika ACK pada event 3 hilang, setelah habis batas waktunya stasiun master mengirim ulang message yang sama untuk kedua kalinya. Transmisi yang berkelebihan mungkin terjadi dan menciptakan sebuah duplikasi record pada tempat kedua dari file data pengguna. Akibatnya, DLC harus mengadakan suatu cara untuk mengidentifikasi dan mengurutkan message yang dikirimkan dengan berdasarkan pada ACK atau NAK sehingga harus dimiliki suatu metoda untuk mengecek duplikat message. Pada gambar 9 ditunjukkan bagaimana urutan pendeteksian duplikasi message bekerja, pada event 1 stasiun pengirim mengirikan sebuah message dengan urutan 0 pada headernya. Stasiun penerima menjawab dengan sebuah ACK dan sebuah nomor urutan 0 (event 2). Pengirim menerima ACK, memeriksa nomor urutan 0 di headernya, mengubah nomor urutan menjadi 1 dan mengirimkan message berikutnya (event (event 3). Stasiun penerima mendapatkan message dengan ACK 1 di event 4. Akan tetapi message ini diterima dalam keadaan rusak atau hilang pada jalan. Stasiun pengirim mengenali bahwa message di event 3 tidak dikenali. Setelah batas waktu terlampau (timeout) stasiun pengirim mengirim ulang message ini (event 5). Stasiun penerima mencari sebuah message dengan nomor urutan 0. Dia membuang message, sejak itu dia adalah sebuah duplikat dari message yang dikirim pada event 3. Untuk melengkapi pertang-gung-jawaban, stasiun penerima mengirim ulang ACK 1 (event ( event 6). 2. Sliding window control
Sifat inefisiensi dari stop and wait DLC telah menghasilkan teknik pengembangan dalam meperlengkapi overlapping antara message data dan message control yang sesuai. Data dan sinyal kontrol mengalir dari pengirim ke penerima secara kontinyu, dan beberapa message yang menonjol (pada jalur atau dalam buffer penerima) pada suatu waktu. DLC ini sering disebut sliding windows karena metode yang digunakan sinkron dengan pengiriman nomer urutan pada header dengan pengenalan yang sesuai. Stasiun transmisi
Respect to learn science
15
mengurus sebuah jendela pengiriman yang melukiskan jumlah dari message(dan nomor urutannya) yang diijinkan untuk dikirim. Stasiun penerima mengurus sebuah jendela penerimaan yang melakukan fungsi yang saling mengimbangi. Dua tempat menggunakan keadaan jendela bagaimana banyak message dapat/ menonjol dalam suatu jalur atau pada penerima sebelum pengirim menghentikan pengiriman dan menunggu jawaban. Sebagai contoh pada gambar 10 suatu penerima dari ACK dari message 1 mengalir ke Station A untuk menggeser jendela sesuai dengan urutan nomor. Jika total message 10 harus dalam jendela, Station A dapat menahan pengiriman message 5,6,7,8,9,0, dan 1. (menahan message-message message-message 2,3 dan 4 dalam kondisi transit). Dia tidak harus mengirim sebuah message menggunakan urutan 2 sampai dia menerima sebuah ACK untuk 2. Jendela melilitkan secara melingkar untuk mengumpulkan nomor-nomor set yang sama. Untuk lebih jelasnya dapat dilihat gambar berikut menampilkan lebih detail mekanisme sliding window dan contoh transmisi messagenya. messagenya. 3. Deteksi Dan Koreksi Error
Sebagai akibat proses-proses fisika yang menyebabkannya terjadi, error pada beberapa media (misalnya, radio) cenderung timbul secara meletup (burst) bukannya satu demi satu. Error yang meletup seperti itu memiliki baik keuntungan maupun kerugian pada error bit tunggal yang terisolasi. Sisi keuntungannya, data komputer selalu dikirim dalam bentuk blok-blok bit. Anggap ukuran blok sama dengan 1000 bit, dan laju error adalah 0,001 per bit. Bila error-errornya independen, maka sebagian besar blok akan mengandung error. Bila error terjadi dengan letupan 100, maka hanya satu atau dua blok dalam 100 blok yang akan terpengaruh, secara rata-ratanya. Kerugian error letupan adalah bahwa error seperti itu lebih sulit untuk dideteksi dan dikoreksi dibanding dengan error yang terisolasi. a. Kode-kode Pengkoreksian Error
Para perancang jaringan telah membuat dua strategi dasar yang berkenaan dengan error. Cara pertama adalah dengan melibatkan informasi redundan secukupnya bersamasama dengan setiap blok data yang dikirimkan untuk memungkinkan penerima menarik kesimpulan tentang apa karakter yang ditransmisikan yang seharusnya ada. Cara lainnya adalah dengan hanya melibatkan redundansi secukupnya untuk menarik kesimpulan bahwa suatu error telah terjadi, dan membiarkannya untuk meminta pengiriman ulang.
Respect to learn science
16
Strategi pertama menggunakan kode-kode pengkoreksian error (error-correcting codes), sedangkan strategi kedua menggunakan kode-kode pendeteksian error (error-detecting codes). Untuk bisa mengerti tentang penanganan error, kita perlu melihat dari dekat tentang apa yang disebut error itu. Biasanya, sebuah frame terdiri dari m bit data (yaitu pesan) dan r redundan, atau check bits. Ambil panjang total sebesar n (yaitu, n=m+r). Sebuah satuan n-bit yang berisi data dan checkbit sering kali dikaitkan sebagai codeword n-bit. Ditentukan dua buah codeword: 10001001 dan 10110001. Disini kita dapat menentukan berapa banyak bit yang berkaitan berbeda. Dalam hal ini, terdapat 3 bit yang berlainan. Untuk menentukannya cukup melakukan operasi EXCLUSIVE OR pada kedua codeword, dan menghitung jumlah bit 1 pada hasil operasi. Jumlah posisi bit dimana dua codeword berbeda disebut jarak Hamming (Hamming, 1950). Hal yang perlu diperhatikan adalah bahwa bila dua codeword terpisah dengan jarak Hamming d, maka akan diperlukan error bit tunggal d untuk mengkonversi dari yang satu menjadi yang lainnya. Pada sebagian besar aplikasi transmisi data, seluruh 2m pesan data merupakan data yang legal. Tetapi sehubungan dengan cara penghitungan check bit, tidak semua 2n digunakan. Bila ditentukan algoritma untuk menghitung check bit, maka akan dimungkinkan untuk membuat daftar lengkap codeword yang legal. Dari daftar ini dapat dicari dua codeword yang jarak Hamming-nya minimum. Jarak ini merupakan jarak Hamming bagi kode yang lengkap. Sifat-sifat pendeteksian error dan perbaikan error suatu kode tergantung pada jarak Hamming-nya. Untuk mendeteksi d error, anda membutuhkan kode dengan jarak d+1 karena dengan kode seperti itu tidak mungkin bahwa error bit tunggal d dapat mengubah sebuah codeword codeword yang valid menjadi codeword valid lainnya. Ketika penerima melihat codeword yang tidak valid, maka penerima dapat berkata bahwa telah terjadi error pada transmisi. Demikian juga, untuk memperbaiki error d, anda memerlukan kode yang berjarak 2d+1 karena hal itu menyatakan codeword legal dapat terpisah bahkan dengan perubahan d, codeword orisinil akan lebih dekat dibanding codeword lainnya, maka perbaikan error dapat ditentukan secara unik.
Respect to learn science
17
Sebagai sebuah contoh sederhana bagi kode pendeteksian error, ambil sebuah kode dimana parity bit tunggal ditambahkan ke data. Parity bit dipilih supaya jumlah bitbit 1 dalam codeword menjadi genap (atau ganjil). Misalnya, bila 10110101 dikirimkan dalam parity genap dengan menambahkan sebuah bit pada bagian ujungnya, maka data itu menjadi 101101011, sedangkan dengan parity genap 10110001 menjadi 101100010. Sebuah kode dengan parity bit tunggal mempunyai jarak 2, karena sembarang error bit tunggal menghasilkan sebuah codeword dengan parity yang salah. Cara ini dapat digunakan untuk mendeteksi erro-error tunggal. Sebagai contoh sederhana dari kode perbaikan error, ambil sebuah kode yang hanya memiliki empat buah codeword valid : 0000000000,0000011111,1111100000 dan 1111111111
Kode ini mempunyai jarak 5, yang berarti bahwa code tersebut dapat memperbaiki error ganda. Bila codeword 0000011111 tiba, maka penerima akan tahun bahwa data orisinil seharusnya adalah 0000011111. Akan tetapi bila error tripel mengubah 0000000000 menjadi 0000000111, maka error tidak akan dapat diperbaiki. Bayangkan bahwa kita akan merancang kode dengan m bit pesan dan r bit check yang akan memungkinkan semua error tunggal bisa diperbaiki. Masing-masing dari 2m pesan yang legal membutuhkan membutuhkan pola bit bit n+1. Karena jumlah total pola bit bit 2n. adalah 2n, kita harus memiliki (n+1)2m Dengan memakai n = m + r, persyaratan ini menjadi (m + r + 2r. Bila m ditentukan, maka ini akan meletakkan batas bawah bawah pada jumlah bit 1) check check yang diperlukan untuk untuk mengkoreksi mengkoreksi error tunggal. Dalam kenyataannya, batas bawah teoritis ini dapat diperoleh dengan menggunakan metoda Hamming (1950). Bit-bit codeword dinomori secara berurutan, diawali dengan bit 1 pada sisi paling kiri. Bit bit yang merupakan pangkat 2 (1,2,4,8,16 dan seterusnya) adalah bit check. Sisanya (3,5,6,7,9 dan seterusnya) disisipi dengan m bit data. Setiap bit check memaksa parity sebagian kumpulan bit, termasuk dirinya sendiri, menjadi genap (atau ganjil). Sebuah bit dapat dimasukkan dalam beberapa komputasi parity. Untuk mengetahui bit check dimana bit data pada posisi k berkontribusi, tulis ulang k sebagai
Respect to learn science
18
jumlahan pangkat 2. Misalnya, 11=1+2+8 dan 29=1+4+8+16. Sebuah bit dicek oleh bit check yang terjadi pada ekspansinya (misalnya, bit 11 dicek oleh bit 1,2 dan 8). Ketika sebuah codeword tiba, penerima menginisialisasi counter ke nol. Kemudian codeword memeriksa setiap bit check, k (k=1,2,4,8,....) untuk melihat apakah bit check tersebut mempunyai parity yang benar. Bila tidak, codeword akan menambahkan k ke counter. Bila counter sama dengan nol setelah semua bit check diuji (yaitu, bila semua bit checknya benar), codeword akan diterima sebagai valid. Bila counter tidak sama dengan nol, maka pesan mengandung sejumlah bit yang tidak benar. Misalnya bila bit check 1,2, dan 8 mengalami kesalahan (error), maka bit inversinya adalah 11, karena itu hanya satu-satunya yang diperiksa oleh bit 1,2, dan 8. Gambar 12 menggambarkan beberapa karakter ASCII 7-bit yang diencode sebagai codeword 11 bit dengan menggunakan kode Hamming. Perlu diingat bahwa data terdapat pada posisi bit 3,5,6,7,9,10,11. Kode Hamming hanya bisa memperbaiki error tunggal. Akan tetapi, ada trick yang dapat digunakan untuk memungkinkan kode Hamming dapat memperbaiki error yang meletup. Sejumlah k buah codeword yang berurutan disusun sebagai sebuah matriks, satu codeword per baris. Biasanya, data akan ditransmisikan satu baris codeword sekali, dari kiri ke kanan. Untuk mengkoreksi error yang meletup, data harus ditransmisikan satu kolom sekali, diawali dengan kolom yang paling kiri. Ketika seluruh k bit telah dikirimkan, kolom kedua mulai dikirimkan, dan seterusnya. Pada saat frame tiba pada penerima, matriks direkonstruksi, satu kolom per satuan waktu. Bila suatu error yang meletup terjadi, paling banyak 1 bit pada setiap k codeword akan terpengaruh. Akan tetapi kode Hamming dapat memperbaiki satu error per codeword, sehingga seluruh blok dapat diperbaiki. Metode ini memakai kr bit check untuk membuat km bit data dapat immune terhadap error tunggal yang meletup dengan panjang k atau kurang. b. Kode-kode Pendeteksian Kesalahan
Kode pendeteksian error kadang kala digunakan dalam transmisi data. Misalnya, bila saturan simplex, maka transmisi ulang tidak bisa diminta. Akan tetapi sering kali deteksi error yang diikuti oleh transmisi ulang lebih disenangi. Hal ini disebabkan karena
Respect to learn science
19
pemakaian transmisi ulang lebih efisien. Sebagai sebuah contoh yang sederhana, ambil sebuah saluran yang errornya terisolasi dan mempunyai laju error 10 – 6 per bit. Anggap ukuran blok sama dengan 1000 bit. Untuk melaksanakan koreksi error blok 1000 bit, diperlukan 10 bit check; satu megabit data akan membutuhkan 10.000 bit check. Untuk mendeteksi sebuah blok dengan error tunggal 1-bit saja, sebuah bit parity per blok akan mencukupi. Sekali setiap 1000 blok dan blok tambahan (1001) akan harus ditransmisikan. Overhead total bagi deteksi error + metoda transmisi ulang adalah hanya 2001 bit per megabit data, dibanding 10.000 bit bagi kode Hamming. Bila sebuah bit parity tunggal ditambahkan ke sebuah blok dan blok dirusak oleh error letupan yang lama, maka probabilitas error dapat untuk bisa dideteksi adalah hanya 0,5 hal yang sangat sulit untuk bisa diterma. Bit-bit ganjil dapat ditingkatkan cukup banyak dengan mempertimbangkan mempertimbangkan setiap blok yang akan dikirim sebagai matriks persegi panjang dengan lebar n bit dan tinggi k bit. Bit parity dihitung secara terpisah bagi setiap kolomnya dan ditambahkan ke matriks sebagai baris terakhir. Kemudian matriks ditransmisikan kembali baris per baris. Ketika blok tiba, penerima akan memeriksa semua bit parity, Bila ada bit parity yang salah, penerima meminta agar blok ditransmisi dit ransmisi ulang. Metoda ini dapat mendeteksi sebuah letupan dengan panjang n, karena hanya 1 bit per kolom yang akan diubah. Sebuah letupan dengan panjang n+1 akan lolos tanpa terdeteksi. Akan tetapi bila bit pertama diinversikan, maka bit terakhir juga akan diinversikan, dan semua bit lainnya adalah benar. (Sebuah error letupan tidak berarti bahwa semua bit salah; tetapi mengindikasikan bahwa paling tidak bit pertama dan terakhirnya salah). Bila blok mengalami kerusakan berat akibat terjadinya error letupan yang panjang atau error letupan pendek yang banyak, maka probabilitas bahwa sembarang n kolom akan mempunyai parity yang benar adalah 0,5. Sehingga probabilitas dari blok yang buruk akan bisa diterima adalah 2 – 2 – n. n. Walaupun metoda di atas kadang-kadang adekuat, pada prakteknya terdapat metode lain yang luas digunakan: Kode polynomial (dikenal juga sebagai cyclic redundancy code atau kode CRC). Kode polynomial didasarkan pada perlakuan stringstring bit sebagai representatsi polynomial dengan memakai hanya koefisien 0 dan 1 saja.
Respect to learn science
20
Sebuah frame k bit berkaitan dengan daftar koefisien bagi polynomial yang mempunyai k suku, dengan range dari xk-1 sampai x0. Polynomial seperti itu disebut polynomial yang bertingkat k-1. Bit dengan orde tertinggi (paling kiri) merupakan koefisien dari xk-1; bit berikutnya merupakan koefisien dari xk2, dan seterusnya. Misalnya 110001 memiliki 6 bit, maka merepresentasikan polynomial bersuku 6 dengan koefisien 1,1,0,0,0 dan 1:x5+x4+x0. Aritmetika polynomial dikerjakan dengan modulus 2, mengikuti aturan teori aljabar. Tidak ada pengambilan untuk pertambahan dan peminjaman untuk pengurangan. Pertambahan dan pengurangan identik dengan EXCLUSIVE OR, misalnya : Pembagian juga diselesaikan dengan cara yang sama seperti pada pembagian bilangan biner, kecuali pengurangan dikerjakan berdasarkan modulus 2. Pembagi dikatakan ―masuk ke‖ yang dibagi bila bilangan yang dibagi mempunyai bit sebanyak bi langan pembagi. Saat metode kode polynomial dipakai, pengirim dan penerima harus setuju terlebih dahulu tentang polynomial generator, G(x). Baik bit orde tinggi maupun bit orde rendah dari generator harus mempunyai harga 1. Untuk menghitung checksum bagi beberapa frame dengan m bit, yang berkaitan dengan polynomial M(x), maka frame harus lebih panjang dari polynomial generator. Hal ini untuk menambahkan checksum keakhir frame sedemikian rupa sehingga polynomial yang direpresentasikan oleh frame berchecksum dapat habis dibagi oleh G(x). Ketika penerima memperoleh frame berchecksum, penerima mencoba membaginya dengan G(x). Bila ternyata terdapat sisa pembagian, maka dianggap telah terjadi error transmisi. Algoritma untuk perhitungan checksum adalah sebagai berikut : 1. Ambil r sebagai pangkat G(x), Tambahkan bit nol r ke bagian orde rendah dari frame, sehingga sekarang berisi m+r bit dan berkaitan dengan polynomial xrM(x). 2. Dengan menggunakan modulus 2, bagi string bit yang berkaitan dengan G(x) menjadi string bit yang berhubungan berhubungan dengan xrM(x). 3. Kurangkan sisa (yang selalu bernilai r bit atau kurang) dari string bit yang berkaitan dengan xrM(x) dengan menggunakan pengurangan bermodulus 2.
Respect to learn science
21
Hasilnya merupakan frame berchecksum yang akan ditransmisikan. Disebut polynomial T(x). menjelaskan proses perhitungan untuk frame 1101011011 dan G(x) = x4 + x + 1. Jelas bahwa T(x) habis dibagi (modulus 2) oleh G(x). Dalam sembarang masalah pembagian, bila anda mengurangi angka yang dibagi dengan sisanya, maka yang akan tersisa adalah angka yang dapat habis dibagi oleh pembagi. Misalnya dalam basis 10, bila anda membagi 210.278 dengan 10.941, maka sisanya 2399. Dengan mengurangkan 2399 ke 210.278, maka yang bilangan yang tersisa (207.879) habis dibagi oleh 10.941. Sekarang kita menganalisis kekuatan metoda ini. Error jenis apa yang akan bisa dideteksi ? Anggap terjadi error pada suatu transmisi, sehingga bukannya string bit untuk T(x) yang tiba, akan tetapi T(x) + E(X). Setiap bit 1 pada E(x) berkaitan dengan bit yang telah diinversikan. Bila terdapat k buah bit 1 pada E(x), maka k buah error bit tunggal telah terjadi. Error tunggal letupan dikarakterisasi oleh sebuah awalan 1, campuran 0 dan 1, dan sebuah akhiran 1, dengan semua bit lainnya adalah 0.Begitu frame berchecksum diterima, penerima membaginya dengan G(x); yaitu, menghitung [T(x)+E(x)]/G(x). T(x)/G(x) sama dengan 0, maka hasil perhitungannya adalah E(x)/G(x). Error seperti ini dapat terjadi pada polynomial yang mengandung G(x) sebagai faktor yang akan mengalami penyimpangan, penyimpangan, seluruh error lainnya akan dapat dideteksi. Bila terdapat error bit tunggal, E(x)=xi, dimana i menentukan bit mana yang mengalami error. Bila G(x) terdiri dari dua suku atau lebih, maka x tidak pernah dapat habis membagi E(x), sehingga seluruh error dapat dideteksi.Bila terdapat dua buah error bit-tunggal yang terisolasi, E(x)=xi+xj, dimana i > j. Dapat juga dituliskan sebagai E(x)=xj(xi-j + 1). Bila kita mengasumsikan bahwa G(x) tidak dapat dibagi oleh x, kondisi yang diperlukan untuk dapat mendeteksi semua error adalah bahwa G(x) tidak dapat habis membagi xk+1 untuk sembarang harga k sampai nilai maksimum i-j (yaitu sampai panjang frame maksimum). Terdapat polynomial sederhana atau berorde rendah yang memberikan perlindungan bagi frame-frame yang panjang. Misalnya, x15+x14+1 tidak akan habis membagi xk+1 untuk sembarang harga k yang kurang dari 32.768. Bila terdapat jumlah bit yang ganjil dalam error, E(x) terdiri dari jumlah suku yang ganjil (misalnya,x5+x2+1, dan bukannya x2+1). Sangat menarik, tidak terdapat
Respect to learn science
22
polynomial yang bersuku ganjil yang mempunyai x + 1 sebagai faktor dalam sistem modulus 2. Dengan membuat x + 1 sebagai faktor G(x), kita akan mendeteksi semua error yang terdiri dari bilangan ganjil dari bit yang diinversikan. Untuk mengetahui bahwa polynomial yang bersuku ganjil dapat habis dibagi oleh x+1, anggap bahwa E(x) mempunyai suku ganjil dan dapat habis dibagi oleh x+1. Ubah bentuk E(x) menjadi (x+1)Q(x). Sekarang evaluasi E(1) = (1+1)Q(1). Karena 1+1=0 (modulus 2), maka E(1) harus nol. Bila E(x) mempunyai suku ganjil, pensubtitusian 1 untuk semua harga x akan selalu menghasilkan 1. Jadi tidak ada polynomial bersuku ganjil yang habis dibagi oleh x+1. Terakhir, dan yang terpenting, kode polynomial dengan r buah check bit akan mendeteksi semua error letupan yang memiliki panjang <=r. Suatu error letupan dengan panjang k dapat dinyatakan oleh xi(xk-1 + .....+1), dimana i menentukan sejauh mana dari sisi ujung kanan frame yang diterima letupan itu ditemui. Bila G(x) mengandung suku x0, maka G(x) tidak akan memiliki xi sebagai faktornya. Sehingga bila tingkat ekspresi yang berada alam tanda kurung kurang dari tingkat G(x), sisa pembagian tidak akan pernah berharga nol. Bila panjang letupan adalah r+1, maka sisa pembagian oleh G(x) akan nol bila dan hanya bila letupan tersebut identik dengan G(x). Menurut definisi letupan, bit awal dan bit akhir harus 1, sehingga apakah bit itu akan sesuai tergantung pada bit pertengahan pertengahan r-1. Bila semua kombinasi adalah sama dan sebanding, maka probabilitas frame yang tidak benar yang akan diterima sebagai frame yang valid adalah ½ r-1. Dapat juga dibuktikan bahwa bila letupan error yang lebih panjang dari bit r+1 terjadi, maka probabilitas frame buruk untuk melintasi tanpat peringatan adalah 1/2r yang menganggap bahwa semua pola bit adalah sama dan sebanding. Tiga buah polynomial telah menjadi standard internasional: CRC-12
= X12 + X11 + X3 + X2 + X1 + 1
CRC-16
= X16 + X15 + X2 + 1
CRC-CCITT
= X16 + X12 + X5 + 1
Respect to learn science
23
Ketiganya mengandung mengandung x+1 sebagai sebagai faktor prima.CRC-12 digunakan bila panjang karakternya sama dengan 6 bit. Dua polynomial lainnya menggunakan karakter 8 bit. Sebuah checksum 16 bit seperti CRC-16 atau CRC-CCITT, mendeteksi semua error tunggal dan error ganda, semua error dengan jumlah bit ganjil, semua error letupan yang mempunyai panjang 16 atau kurang, 99,997 persen letupan error 17 bit, dan 99,996 letupan 18 bit atau lebih panjang. 4. Kendali kesalahan
Tujuan dilakukan pengontrolan terhadap error adalah untuk menyampaikan frameframe tanpa error, dalam urutan yang tepat ke lapisan jaringan. Teknik yang umum digunakan untuk error control berbasis pada dua fungsi, yaitu: Error detection, biasanya menggunakan teknik CRC (Cyclic Redundancy Check) Automatic Repeat Request (ARQ), ketika error terdeteksi, pengirim meminta mengirim ulang frame yang terjadi kesalahan. Mekanisme Error control meliputi a.
Ack/Nak
: Provide sender some feedback about other end
b.
Time-out
: for the case when entire packet or ack is lost
c.
Sequence numbers
: to distinguish retransmissions from originals
Untuk menghindari terjadinya error atau memperbaiki jika terjadi error yang dilakukan adalah melakukan perngiriman message secara berulang, proses ini dilakukan secara otomatis dan dikenal sebagai Automatic Repeat Request (ARQ). Pada proses ARQ dilakukan beberapa langkah diantaranya (1): a.
Error detection
b.
Acknowledgment
c.
Retransmission after timeout
d.
Negative Acknowledgment
Respect to learn science
24
BAB II Network components 2.1 Bridge Bridge secara umum dibedakan atas dua bagian yaitu Bridge Lokal dan
Bridge
Remote . Bridge
menghubungkan
dua
jaringan
Lokal LAN
secara langsung pada area yang sama secara fisik, misalnya bridging antar gedung yang berdekatan. Bridge Remote menghubungkan
dua
jaringan
yang
secara fisik berjauhan. Implementasi yang dilakukan biasanya menggunakan kabel telepon dan modem atau perangkat nirkabel (Wireless LAN, sekarang dikenal dengan istilah WiLAN). Perangkat nirkabel yang paling banyak digunakan adalah yang bekerja pada frekuensi bebas ISM ( Industrial Scientific Medical ) 2.4GHz.
Bridge Remote menghadirkan tantangan yang unik dalam masalah transfer data. Bridge Lokal masih jauh lebih cepat dan reliable dalam transfer data, selain biaya yang lebih murah dibandingkan Bridge Remote, meskipun sampai saat ini kemampuan koneksi jarak jauh (Wide Area Network ) makin tinggi transfer datanya, contohnya penggunaan modem Digital Subscriber Line) atau perangkat nirkabel yang bisa sampai 11Mbps. DSL ( Digital
Respect to learn science
25
Institute of Electrical and Electronic Engineers (IEEE) membagi lapisan Link OSI
menjadi dua sub-lapisan yaitu: Media Access Control (MAC) dan Logical Link Control (LLC). Sub-lapisan MAC mengatur akses ke media fisik dan sub-lapisan LLC mengatur frame, alur data, pengecekan error dan pengalamatan (MAC address). Beberapa bridge disebut sebagai MAC-layer bridges, perangkat ini menghubungkan antara network yang homogen, misalnya ethernet dengan ethernet. Jenis bridge lainnya yang menghubungkan network yang heterogen, misalnya ethernet dengan token-ring. Mekanisme dasar bridging yang heterogen ini bisa digambarkan seperti berikut:
Dari gambar, host A mengirim paket ke host B melalui bridge, di bridge paket data ethernet distrip headernya oleh sub-lapisan MAC dan diteruskan ke sub-lapisan LLC lebih lanjut. Setelah diproses di sub-lapisan LLC dan diimplementasikan protokol token-ring kemudian dikirimkan ke sub-lapisan MAC dan selanjutnya secara fisik ditransfer melalui media fisik token-ring.
Respect to learn science
26
2.2 Switch Switch adalah perangkat jaringan yang bekerja di lapisan Data-link, mirip dengan bridge, berfungsi menghubungkan banyak segmen LAN ke dalam satu jaringan yang lebih besar. Seperti bridge, switch bekerja atas dasar
informasi
MAC
address.
Switch
mempunyai kemampuan dan kinerja yang lebih baik dibandingkan dengan bridge karena switch selain bekerja secara software juga bekerja di atas hardware. Switch menggunakan algoritma store-and-forward dan cut-through pada saat melakukan pengiriman data. Jenis switch yang sering dipakai adalah LAN switch, ATM switch dan gabungan switch dengan teknologi routing. Switch Asynchronous Transfer Mode (ATM) menyediakan switching kecepatan tinggi yang bersifat scalabe untuk workgroup, WAN sampai enterprise backbone. Selain itu switch ATM bisa mengkombinasikan aplikasi suara, gambar dan data dalam satu jaringan yang sama. Switch ATM menggunakan metoda switch paket yang fixsize, paket ini biasa disebut dengan sel ( cell).
Respect to learn science
27
Switch LAN digunakan untuk menghubungkan segmen LAN yang banyak, menyediakan menyediakan media dedicated dengan komunikasi yang bebas dari tumbukan ( collision ) antar perangkat jaringan dan mendukung komunikasi simultan, serta dirancang untuk akses kecepatan tinggi.
2.2.1 Kelebihan Switch Switch dan Switch VLAN sama-sama bekerja di lapisan kedua lapisan OSI. Implementasi teknologi pada lapisan ini memberikan tiga kelebihan utama: Bandwidth, switch LAN memberikan bandwidth yang dedicated untuk setiap dan
antar portnya. Jika masing-masing port tersambung ke switch lagi atau share-hub maka tiap segmen tersebut mendapat alokasi bandwidth yang sama (contohnya adalah gambar implementasi VLAN di atas). Teknik ini biasa disebut dengan segmentasi mikro (microsegmenting).
Respect to learn science
28
VLAN, switch VLAN mampu membagi grup port secara fisik menjadi beberapa
segmen LAN secara logik, masing-masing broadcast domain yang terjadi tidak akan saling mengganggu antar VLAN. VLAN ini sering juga disebut sebagai switched domains
atau
autonomous
switching
domains.
Komunikasi
antar
VLAN
membutuhkan router (berfungsi sebagai gateway masing-masing VLAN). Otomatisasi pengenalan dan penerjemahan paket, salah satu teknologi yang
dikembangkan oleh Cisco adalah Automatic Paket Recognition and Translation (APaRT) yang berfungsi untuk menyediakan transparansi antara Ethernet dengan CDDI/FDDI.
2.2.2 Perancangan Jaringan Switch Implementasi dari perangkat share ke perangkat switch mengalami evolusi selama beberapa tahun. Perancang jaringan awalnya mempunyai keterbatasan dalam pemilihan perangkat untuk membangun sebuah jaringan kampus atau jaringan antar LAN. Pesatnya perkembangan perkembangan PC dan kebutuhan aplikasi klien-server membutuhkan pipa jaringan yang lebar dan cepat, terutama untuk aplikasi multimedia. Pemenuhan kebutuhan ini berevolusi dari pemakaian perangkat share-hub ke switch.
Gambar di atas menunjukkan sebuah strategi untuk mempertahankan infrastruktur kabel dengan pemakaian perangkat yang baru. Bermula dari pemakaian hub, digantikan
Respect to learn science
29
dengan switch layer 2, switch layer 3, ATM, CDDI (Copper Data Distributed Interface) dan FDDI (Fiber Data Distributed Interface). Strategi dasar perancangan jaringan switch meliputi: A.
Switch LAN
B.
Virtual LAN
C.
Campus LAN
A. Switch LAN
Switch LAN adalah perangkat yang secara tipikal mempunyai beberapa port yang menghubungkan beberapa segmen LAN lain dan port pada switch ini berkecepatan tinggi (kita kenal 100Mbps untuk Ethernet, FDDI dan 155Mbps pada ATM). Sebuah switch mempunyai bandwidth yang dedicated untuk setiap portnya. Untuk kinerja yang tinggi biasanya satu port dipasang untuk satu workstation PC. Contoh sederhana seperti terlihat di gambar.
Ketika switch mulai bekerja maka pada saat yang sama setiap workstation memulai request data ke workstation lain (atau server), setiap request yang diterima ditampung oleh switch dan memfilter MAC address dan port yang tersambung dari masing-masing workstation, lalu disusun ke dalam sebuah tabel. Switch pada saat ini rata-rata mampu menampung tabel MAC address sebanyak 8000.
Respect to learn science
30
Ketika host A pada port 1 akan melakukan transfer data ke host B di port 2 switch akan mem-forward bingkai paket dari port 1 ke port 2. Pada saat yang bersamaan host C melakukan transmisi data ke host D maka komunikasi masing-masing tidak akan saling terganggu sebab switch telah menyediakan jalur logik dan fisik secara dedicated. Ketika perangkat yang terhubung ke switch akan melakukan transmisi data ke sebuah host yang tidak termasuk dalam tabel MAC di atas maka switch akan mengalihkan bingkai data tersebut ke seluruh port dan tidak termasuk port asal data tersebut. Teknik ini disebut dengan flooding. Implementasi switch atau beberapa switch jika tanpa pertimbangan dan perancangan bisa menyebabkan jaringan lumpuh karena flooding ini (bayangkan jika flooding ini terjadi di share-hub). Dalam jaringan TCP/IP setiap workstation juga mempunyai mempunyai tabel MAC address, tabel ini biasa disebut dengan ARP ( Address Resolution Protocol). ). Tabel ini disusun sebagai pasangan MAC address dengan IP address. Dengan tersambungnya workstation tersebut ke switch, pada saat workstation membroadcast ARP/NetBIOS untuk mencari pasangan MAC address dan IP address workstation lain akan dihadang oleh switch. Kondisi seperti ini menyebabkan nama workstation tidak bisa langsung tampil dalam jaringan Samba atau Windows. Solusi masalah fisik ini ditanggulangi dengan implementasi WINS server, setiap workstation mendaftarkan dirinya langsung ke WINS server dan WINS server akan menjawab setiap query dari broadcast ARP/NetBIOS. B. Virtual LAN
Sebuah Virtual LAN atau dikenal sebagai VLAN merupakan fungsi logik dari sebuah switch. Fungsi logik ini mampu membagi jaringan LAN ke dalam beberapa jaringan virtual. Jaringan virtual ini tersambung ke dalam perangkat fisik yang sama. Implementasi VLAN dalam jaringan memudahkan seorang administrator jaringan dalam membagi secara logik group-group workstation secara fungsional dan tidak dibatasi oleh batasan lokasi. Generasi pertama VLAN berbasis dari OSI Layer 2 (MAC address) dengan mekanisme bridging dan multiplexing. Implementasi umum VLAN bisa kita deskripsikan dalam gambar berikut:
Respect to learn science
31
Ethernet 10Mbps tersambung ke masing-masing switch A, B, C dan D di tiap-tiap lantai, keempat switch ini tersambung ke sebuah Fast-Ethernet switch E 100Mbps. Dari gambar tersebut bisa kita lihat ada dua VLAN yaitu VLAN 10 dan VLAN 20. Masingmasing VLAN mempunyai jalur yang dedicated antar workstationnya, jalur ini sering disebut sebagai sebuah broadcast domain. Selain secara fisik switch membatasi broadcast data, manajemen VLAN akan membatasi lagi broadcast ini sehingga VLAN 10 dan VLAN 20 sama sekali tidak ada komunikasi langsung. Implementasi VLAN biasanya digabungkan dengan teknologi routing yang bekerja di lapisan ketiga OSI (lapisan network). Dalam jaringan TCP/IP masing-masing VLAN membutuhkan sebuah gateway (gateway dalam artian logik) untuk bisa berkomunikasi dengan VLAN lainnya.
Respect to learn science
32
Kelebihan VLAN
Isu utama implementasi VLAN dibandingkan jaringan hub/flat adalah scalability terhadap topologi jaringan dan penyederha p enyederhanaan naan manajemen. Kelebihan yang ditawarkan pada VLAN adalah: Broadcast control, layaknya switch biasa membatasai broadcast domain VLAN
mampu membatasi broadcast dari masing-masing grup-grup VLAN, antar VLAN tidak terjadi broadcast silang. Security, meskipun secara fisik berada dalam switch yang sama VLAN membentengi
sebuah grup dari VLAN lain atau dari akses luar jaringan, selain itu it u implementasi firewall di routernya bisa dipasang juga. Performance, pengelompokkan secara grup logik ini memberikan jalur data yang
dedicated untuk setiap grup, otomatis masing-masing grup mendapat kinerja jalur data yang maksimum. Management, prinsip logik pada VLAN memberikan kemudahan secara manajemen,
seorang user dari satu grup VLAN yang berpindah lokasi tidak perlu lagi mengganti koneksi/sambungan koneksi/sambungan ke switch, administrator cukup mengubah anggota grup VLAN V LAN tersebut (port baru masuk grup VLAN dan port lama dikeluarkan dari grup VLAN). C. Campus LAN
Sebuah jaringan yang terdiri dari beberapa segmen dan menggunakan perangkat switch sering disebut sebagai Campus LAN. Selain teknologi switching yang mengendalikan jalur data juga diterapkan teknologi routing untuk mewadahi kebutuhan komunikasi antar VLAN. Kombinasi dua teknologi ini memberikan kelebihan jaringan berupa: Jalur data yang dedicated sebagai backbone kecepatan kecepatan tinggi Implementasi VLAN bagi workgroup yang terpisah secara lokasi yang berjauhan Teknologi routing antar VLAN untuk komunikasi karena batasan VLAN itu sendiri selain juga sebagai penerapan jaringan TCP/IP untuk bergabung ke network yang lebih besar, internet. Implementasi firewall pada teknologi routing (berbasis TCP/IP )
Respect to learn science
33
Implementasi fisik dalam satu Campus LAN didasarkan atas kondisi fisik yang ada, apakah memungkinkan memungkinkan dengan kabel UTP/STP, atau kabel telepon secara back-to-back atau harus dengan kabel serat optik.
2.3 NIC (network interface card) Network interface card adalah sebuah
kartu
yang
berfungsi
sebagai
jembatan dari komputer ke sebuah jaringan komputer. Jenis NIC yang beredar, terbagi menjadi dua jenis, yakni NIC yang bersifat fisik, dan NIC yang bersifat logis. Contoh NIC yang bersifat fisik adalah NIC Ethernet,
Token
Ring,
dan
lainnya;
sementara NIC yang bersifat logis adalah loopback adapter dan Dial-up Adapter. Disebut juga sebagai Network Adapter. Setiap jenis NIC diberi nomor alamat yang disebut sebagai MAC address, yang dapat bersifat statis atau dapat diubah oleh pengguna.
Respect to learn science
34
NIC fisik umumnya berupa kartu yang dapat ditancapkan ke dalam sebuah slot dalam motherboard komputer, yang dapat berupa kartu dengan bus ISA, bus PCI, bus EISA, bus MCA, atau bus PCI Express. Selain berupa kartu-kartu yang ditancapkan ke dalam motherboard, NIC fisik juga dapat berupa kartu eksternal yang berupa kartu dengan bus USB, PCMCIA, bus serial, serial, bus paralel atau Express Card, sehingga meningkatkan meningkatkan mobilitas (bagi (bagi pengguna yang mobile). Kartu NIC Fisik terbagi menjadi dua jenis, yakni: 1. Kartu NIC dengan media jaringan yang spesifik (Media-specific NIC): yang membedakan kartu NIC menjadi beberapa jenis berdasarkan media jaringan yang digunakan. Contohnya adalah NIC Ethernet, yang dapat berupa Twisted-Pair (UTP atau STP), Thinnet, atau Thicknet, atau bahkan tanpa kabel (Wireless Ethernet). 2. Kartu NIC dengan arsitektur jaringan yang spesifik (architecture-specific NIC): yang membedakan kartu NIC menjadi beberapa jenis, sesuai dengan arsitektur jaringan yang digunakan. Contohnya adalah Ethernet, Token Ring, serta FDDI (Fiber Distributed Data Interface), yang kesemuanya itu menggunakan NIC yang berbedabeda. Kartu NIC Ethernet dapat berupa Ethernet 10 Megabit/detik, 100 Megabit/detik, 1 Gigabit/detik atau 10 Gigabit/detik. Tugas NIC adalah untuk mengubah aliran data paralel dalam bus komputer menjadi bentuk data serial sehingga dapat ditransmisikan di atas media jaringan. Media yang umum digunakan, antara lain adalah kabel UTP Category 5 atau Enhanced Category 5 (Cat5e), kabel fiber-optic, atau radio (jika memang tanpa kabel). Komputer dapat berkomunikasi dengan NIC dengan menggunakan beberapa metode, yakni I/O yang dipetakan ke memori, Direct Memory Access (DMA), atau memory yang digunakan bersama-sama. Sebuah aliran data paralel akan dikirimkan kepada kartu NIC dan disimpan terlebih dahulu di dalam memori dalam kartu sebelum dipaketkan menjadi beberapa frame berbeda-beda, sebelum akhirnya dapat ditransmisikan melalui media jaringan. Proses pembuatan frame ini, akan menambahkan header dan trailer terhadap data yang hendak dikirimkan, yang mengandung alamat, pensinyalan, atau informasi pengecekan kesalahan. Frame-frame tersebut akan kemudian diubah menjadi pulsa-pulsa elekronik (voltase, khusus untuk kabel tembaga), pulsa-pulsa cahaya yang dimodulasikan (khusus untuk kabel fiberoptic), atau gelombang mikro (jika menggunakan radio/jaringan tanpa kabel).
Respect to learn science
35
NIC yang berada dalam pihak penerima akan memproses sinyal yang diperoleh dalam bentuk terbalik, dan mengubah sinyal-sinyal tersebut ke dalam aliran bit (untuk menjadi frame jaringan) dan mengubah bit-bit tersebut menjadi aliran data paralel dalam bus komputer penerima. Beberapa fungsi tersebut dapat dimiliki oleh NIC secara langsung, diinstalasikan di dalam firmware, atau dalam bentuk perangkat lunak yang diinstalasikan dalam sistem operasi.
Respect to learn science
36
BAB III ARP Dan RARP
Address Resolution Protocol (ARP) dan Reverse Address Resolution Protocol (RARP) menggunakan alamat fisik unicast dan broadcast . Sebagai contoh Ethernet akan
menggunakan alamat FFFFFFFFFFFF16 sebagai alamat broadcast . Sesungguhnya ARP dan RARP adalah proses pemetaan alamat fisik ( Physical Address ) seperti alamat NIC yang berasosiasi kepada l ogical address (alamat IP) atau sebaliknya.
3.1 Address Resolution Protocol (ARP) ARP singkatan dari Address Resolution Protocol , salah satu anggota dari kumpulan protokol TCP/IP, yang berada pada tingkatan layer 2 menurut OSI. ARP bertugas menerjemahkan pengalamatan dari nomor IP (IP Address) menjadi MAC (Media Access Control). ARP berasosiasi antara alamat fisik dan alamat IP. Pada LAN, setiap device, host, station dll diidentifikasi dalam bentuk alamat fisik fi sik yang didapat dari NIC. Setiap host atau router yang ingin mengetahui alamat fisik daripada host atau router yang terletak dalam jaringan lokal yang sama akan mengirim paket query ARP secara
Respect to learn science
37
broadcast , sehingga seluruh host atau router yang berada pada jaringan lokal akan menerima
paket query tersebut. Kemudain setiap router atau host yang menerima paket query dari salah satu host atau router yang mengirim maka akan diproses hanya oleh host atau router yang memiliki IP yang terdapat dalam paket query ARP. Host yang menerima respons akan mengirm balik kepada pengirim query yang berisi paket berupa informasi alamat IP dan alamat fisik. Paket ini balik (reply ini sifatnya unicast . Lihat Gambar berikut).
Respect to learn science
38
Format Paket
Pada gambar dibawah memperlihatkan format paket ARP.
Hardware Type : adalah tipe hardware/perangkat keras. Banyak bit dalam field ini
adlah 16 bit. Sebagai contoh untuk Ethernet mempunyai tipe 1. Protocol Type : adalah tipe protokol di mana banyaknya bit dalam field ini 16 bit.
Contohnya, untuk protokol IPv4 adalah 080016. Hardware Length : field berisi 8 bit yang mendefinisikan mendefinisikan panjang alamat fisik.
Contohnya, untuk Ethernet, panjang alamat fisik adalah 6 byte. Protocol Length : field berisi 8 bit yang mendefinisikan panjang alamat alamat logika dalam
satuan byte. Contoh : untuk protokol IPv4 panjangnya panjangnya adalah 4 byte. Operation Request & Reply: field berisi 16 bit ini mendefinisikan jenis paket untuk
ARP apakah itu berjenis ARP request atau ARP reply. Sender Hardware Address : banyaknya field adalah variabel yang mendefinisikan
alamat fisik dari pengirim. Untuk Ethernet panjang nya 6 byte.
Respect to learn science
39
Sender Protocol Address : field ini panjangnya juga variabel dan untuk
mendefiniskan alamat logika (alamat IP) dari pengirim. Target Hardware Address : field ini panjangnya juga variabel yang mendefiniskan
alamat fisik daripada target. Pada paket ARP request, field ini isinya 0 semua. Target Protocol Address : field ini panjangnya juga variabel dan mendefinisikan
alamat logika (IP) dari target. Enkapsulasi (pembungkusan)
Sebuah paket ARP dienkapsulasi langsung ke frame data link . Lihat Gambar berikut.
Lebih jelasnya……
GAMBAR: Komponen-komponen ARP
Respect to learn science
40
3.1.1 CARA KERJA ARP 1. Saat komputer pertama dinyalakan dan gabung dengan jaringan, dia hanya tau alamat IP dan nomor MAC punya dirinya sendiri. Kita namakan komputer ini si A. 2.
Ketika ada komputer yang bicara dengan komputer yang lain, si A juga ikut mendapat paket yang dikirimkan ke komputer lain tersebut, meski paket itu bukan untuk dirinya. Ini adalah sifat dari jaringan Ethernet.
3. Setelah paket dibuka, disitu ada data pengirim paket yang berisi nomor IP dan MAC. Data tersebut lalu disimpan oleh si A kedalam daftar tabel MAC miliknya. Satu data sudah tersimpan. Sip. 4. Dalam paket tersebut juga ada data penerima, yang terdiri dari nomor IP dan MAC si penerima. Data tersebut juga disimpan. 5. Begitu seterusnya, jadi meski si A diam saja, dia bisa tau banyak tentang siapa saja yang ada di jaringan ini, meski tidak semua. 6. Ketika dia mau mengirim data ke suatu nomor IP, maka dia harus tau alamat MAC komputer yang akan ditujunya. ditu junya. 7. Jika dalam daftar MAC miliknya terdapat nomor IP komputer tujuan, maka dia dapat langsung mengambil data tersebut. 8. Tapi jika tidak ada, maka si A melakukan broadcasting (pengumuman), (pengumuman), 'nomor IP ini, MAC-nya berapa?, kalo ada ada yang punya, hubungi aku di alamat IP dan MAC ini' 9. Semua anggota jaringan mendengarkan. mendengarkan. 10. Jika ada yang sudah kenal A, maka diam saja. Tapi bagi yang belum, harus mencatat data si A (IP + MAC) yang teriak tadi. 11. Bagi yang merasa dicari oleh si A, maka harus menjawab: 'itu IP-ku, dan MAC-ku adalah ini' 12. Jawaban itu didengarkan oleh semua anggota jaringan. 13. Jika ada yang sudah kenal si penjawab, maka diam saja. Tapi bagi yang belum, harus mencatat jawaban tadi kedalam dafatr MAC masing-masing. Dalam aplikasi ini, dikenalkan beberapa teknik sebagai berikut: a. Teknik Delay yang jelek, karena menggunakan looping. Mestinya pake API Sleep
Respect to learn science
41
b. Cara membuat nomor IP acak dan nomor MAC acak. c. Membuat menu pop-up
3.1.2 KELEMAHAN ARP ARP poisoning atau lebih populer di kenal ARP spoofing merupakan sebuah teknik penyerangan penyerangan jaringan yang digunakan untuk mengacaukan jaringan atau sebuah routing didalam jaringan. Seorang yang melakukan ARP spoofing dapat mengintip data frame dalam sebuah jaringan , memanipulasi traffic , atau memberhentikan traffic atau routing. secara simple dapat di ilustrasikan sebagai berikut : Host A
Halo..halo...saya Halo..halo...saya adalah 192.168.1.1 MAC 00:12:13:14:15:16 Host C [ARP Poison Attacker]
Respect to learn science
42
Halo..halo...saya Halo..halo...saya adalah 192.168.1.1 MAC 00:01:02:AA:09:3B Host B
192.168.1.2 Yangg bener mana nih? MAC 00:01:02:AA:09:3B atau MAC 00:12:13:14:15:16 ? 192.168.1.1 yangg mana?
Dari gambar ilustrasi di atas dapat kita lihat bahwa ada 3 buah komputer dalam sebuah jaringan, masing masing komputer A B dan C. Komputer A dan B awal nya bisa saling berkomunikasi dengan baik satu sama lain , lalu muncullah Komputer C masuk dalam jaringan melakukan poisoning ARP / ARP Spoofing dan mengelabui jaringan, dan seolah olah ip 192.168.1.1 berada Di mac Address 00:01:02:AA:09:3B . Dengan teknik poisoning komputer C bisa mengelabui komputer B bahwa sebenarnya pemiliki ip address 192.168.1.1 yang benar adalah komputer C . Hebat bukan ? dengan mengacaukan jaringan menggunakan poisoning ARP attack sebuah sistem jaringan yang baik bisa di bodohi dengan sempurna.
Lalu Bagai mana caranya mencegah atau usaha apa yang bisa dilakukan agar tidak terpengaruh racun arp ini ?
Salah satu caranya adalah dengan men set arp static s tatic pada komputer
misal pada windows dengan cara mengetikan perintah berikut pada command prompt : misal untuk IP 192.168.1.1 dan MAC 00:1e:58:3f:c5:de ketik perintah berikut:
Respect to learn science
43
arp -s 192.168.1.1 00-1e-58-3f-c5-de atau pada linux juga sama arp -s IPnya MACnya jika banyak host yang mau di set di linux bisa dengan cara membuat file list ether dan ip contoh : /etc/ethers 192.168.0.1 00-1e-58-3f-c5-de 192.168.0.2 00-1e-58-3f-c5-da 192.168.0.3 00-1e-58-3f-c5-d1 kemudia bisa di eksekusi dengan cara mengetikan perintah berikut : arp -f /etc/ethers
3.1.2.1 ARP SPOOFING ARP spoofing merupakan konsep dari serangan penyadapan diantara terhadap dua mesin yang sedang berkomunikasi atau yang disebut dengan Man in The Middle Attack. Sebuah aplikasi alat bantu untuk menganalisa paket dari protokol kita pergunakan alat yang disebut wireshark di unduh di situs http://www.wireshark.org. Kita akan melakukan ARP spoofing dengan menggunakan skrip ―arpret.c‖ skrip tersebut dibuat dengan bahasa pemrograman C yang bekerja dengan mengirim ARP reply palsu kepada host target dan hanya bisa dijalankan dalam sistem operasi Linux. Linux Slackware versi 12.1 berjalan di komputer penyadap yang menjalankan skrip tersebut mempunyai IP 192.168.10.22 dengan MAC address 00:1e:ec:c4:86:67 selain itu dilakukan setting kernel untuk bisa mem-forward paket ke tujuan lain dengan kata lain meneruskan paket yang telah diterima. Host yang menjadi sasaran adalah komputer yang berfungsi sebagai gateway menjalankan sistem operasi Linux Fedora 8 dengan IP 192.168.10.7 (00:0C:F1:86:E3:35) dan
Respect to learn science
44
komputer pengguna dengan sistem operasi Ms Windows XP SP2 yang menggunakan layanan yang ada di gateway dengan IP 192.168.10.4 (00:0C:F1:96:A7:1C). Setelah proses kompilasi skrip ―arpret.c‖ di sistem operasi Linux Slackware, lalu kita akan mencoba mengirimkan sebuah ARP-reply palsu kepada komputer 192.168.10.7 dimana headernya kita memberikan MAC address penyusup tapi dengan IP 192.168.10.4 yang bertindak sebagai gateway dengan maksud komputer agar komputer penyusup dianggap gateway oleh komputer 192.168.10.7. Kita mengatur kernel agar bisa melakukan meneruskan meneruskan paket dengan perintah dalam konsole Linux seperti di bawah ini : # echo ‖1‖ > /proc/sys/net/ipv4/ip_forwarding Dilanjutkan dengan kompilasi skrip dan menjalankan skrip dengan opsi menggunakan kartu Ethernet eth0. Header ARP-reply berisi alamat IP gateway 192.168.10.4 tapi dengan MAC address 00:1e:ec:c4:86:67 lalu dikirimkan ke IP 192.168.10.6 dan opsi – k2 k2 dengan maksud proses meracuni ARP cache dilakukan secara terus-menerus. ./arpret -i eth0 -s 192.168.10.8 -S 00:1e:ec:c4:86:67 -d 192.168.10.6 -D 00:50:ba:83:1b:d1 k2 Hal diatas mengakibatkan ter-manipulasinya isi cache ARP yang sebelumnya cache untuk komputer gateway adalah 00:0C:F1:96:A7:1C tapi berubah menjadi MAC address dari komputer penyusup 00:1e:ec:c4:86:67. Seperti yang terlihat pada gambar dibawah ini pada komputer 192.168.10.7 yang menjalankan sistem operasi MS Windows XP SP2 dengan mengetikkan arp – arp – a untuk melihat semua ARP cache yang tersimpan.
Respect to learn science
45
Dalam setiap host dan perangkat switch dalam jaringan menyimpan catatan daftar MAC dan IP Address yang disebut dengan ARP cache. Sistem akan menggunakan ARP cache untuk berhubungan dengan host lain dalam pertukaran data. Jika alamat tidak terdapat dalam daftar di memori atau ARP cache, sistem akan menggunakan menggunakan ARP untuk mencari tahu MAC address pada host tujuan dan perangkat switch menggunakan tabel ARP untuk membatasi trafik hanya untuk MAC address yang terdaftar pada port. Arp spoofing adalah teknik untuk menyadap frame data dalam jaringan lokal, mengubah lalu lintas data atau memberhentikan lalu lintas data. Seorang penyusup dalam melakukan ARP spoofing akan mengirim pesan ARP palsu ke ethernet jaringan lokal dengan tujuan menyamakan alamat MAC dengan komputer lain misalnya komputer gateway. Jadi setiap lalu lintas data terhadap IP gateway akan mengarah terlebih dahulu ke komputer penyusup sebagai gateway palsu yang akhirnya diteruskan ke gateway yang asli dan memungkinkan untuk memodifikasi data sebelum diteruskan ke gateway. Aksi ini disebut dengan Man in The Middle Attack, Att ack, serangan jenis ini bisa kita gambarkan sebagai sebagai berikut :
sebelum ARP spoofing
Respect to learn science
46
Sebelum serangan terjadi ARP cache dalam keadaan normal menyimpan alamat MAC dari tujuan transmisi data. Target penyadapan adalah di antara dua mesin yang terhubung pada jaringan yang sama dengan penyusup yaitu korban 1 pada IP 192.168.10.4 (00:0C:F1:96:A7:1C) dengan mesin korban 2 pada IP 192.168.10.7 (00:0C:F1:86:E3:35) dan mesin penyusup pada IP (00:1e:ec:c4:86:67). Pada serangan dilakukan sang penyusup akan melakukan pengiriman paket ARP-Reply yang berisi MAC dari mesin p enyusup. enyusup. penyusup — penyusup — > korban 1 : (IP korban 2) is at (MAC penyusup) penyusup — penyusup — > korban 2 : (IP korban 1) is at (MAC penyusup) Jika kita analisa paket-paket yang dikirimkan penyusup ke korban menggunakan aplikasi bantu untuk analisa paket dalam jaringan yang bernama wireshark akan tampak seperti dibawah ini :
analisa arp poison dengan wireshark
Respect to learn science
47
Seperti yang kita lihat komputer penyusup mengirim ARP-reply kepada IP 192.168.10.4 berikut dengan alamat MAC dari komputer penyusup 00:1e:ec:c4:86:67 dan hal yang sama dikirimkan ARP-reply kepada IP 192.168.10.7 berikut dengan alamat MAC dari komputer penyusup 00:1e:ec:c4:86:67. 00:1e:ec:c4:86:67. Lalu lintas yang terjadi antara korban 1 dan korban 2 akan diterima terlebih dahulu oleh komputer penyusup sebelum di teruskan ke tujuan data yang bisa disadap adalah transmisi tidak menggunakan menggunakan enkripsi atau berbasis berbasis plain text seperti TELNET, FTP, POP, RLOGIN, SSH1, ICQ, SMB, NS, MySQL, HTTP, NNTP, X11, NAPSTER, IRC, RIP, BGP, SOCKS 5, IMAP 4, VNC, LDAP, NFS, SNMP, HALF LIFE, QUAKE 3, MSN, YMSG.
3.2 Reverse Address Resolution Protocol (RARP) Reverse Address Resolution Protocol (RARP) adalah Protokol RARP digunakan untuk merubah protokol pengalatan pada layer yang lebih rendah (Alamat MAC) menjadi alamat IP. Sesungguhnya RARP didisain untuk memecahkan masalah mapping alamat dalam sebuah mesin/komputer di mana mesin/komputer mengetahui alamat fisiknya namun tidak mengetahui alamat logikanya.
Cara kerja RARP ini terjadi pada saat mesin seperti komputer atau router yang baru bergabung dalam jaringan lokal, kebanyakan tipe mesin yang menerapkan RARP adalah mesin yang diskless , atau tidak mempunyai aplikasi program dalam disk. RARP kemudian memberikan request secara broadcast di jaringan lokal. Mesin yang lain pada jaringan lokal yang mengetahui semua seluruh alamat IP akan akan meresponsnya dengan RARP reply secara unicast . Sebagai catatan, mesin yang merequest harus menjalankan program klien RARP, sedangkan mesin yang merespons harus menjalankan program server RARP. Lihat Gambar berikut
Respect to learn science
48
Format Paket Pada gambar dibawah memperlihatkan format paket RARP.
Respect to learn science
49
Hardware Type : adalah tipe hardware/perangkat keras. Banyak bit dalam field ini adlah 16 bit. Sebagai contoh untuk Ethernet mempunyai tipe 1. Protocol Type : adalah tipe protokol di mana banyaknya bit dalam field ini 16 bit. Contohnya, untuk protokol IPv4 adalah 080016. Hardware Length : field berisi 8 bit yang mendefinisikan mendefinisikan panjang alamat fisik. Contohnya, untuk Ethernet, panjang alamat fisik adalah 6 byte. Protocol Length : field berisi 8 bit yang mendefinisikan panjang alamat alamat logika dalam satuan byte. Contoh : untuk protokol IPv4 panjangnya adalah adalah 4 byte. b yte. Operation Request & Reply: field berisi 16 bit ini mendefinisikan jenis paket untuk ARP apakah itu berjenis ARP request atau ARP reply. Sender Hardware Address : banyaknya field adalah variabel yang mendefinisikan alamat fisik dari pengirim. Untuk Ethernet panjang nya 6 byte. Sender Protocol Address : field ini panjangnya juga variabel dan untuk mendefiniskan alamat logika (alamat IP) dari pengirim. Target Hardware Address : field ini panjangnya juga variabel yang mendefiniskan alamat fisik daripada target. Pada paket ARP request, field ini isinya isin ya 0 semua. Target Protocol Address : field ini panjangnya juga variabel dan mendefinisikan alamat logika (IP) dari target. Enkapsulasi (pembungkusan)
Sebuah paket ARP dienkapsulasi langsung ke frame data link . Lihat Gambar berikut.
Respect to learn science
50
DAFTAR PUSTAKA ---------------, 2010, Website: www.kamusilmiah.com ---------------, 2010, Website: www.gamexeon.com ---------------, 2010, Website: blog.unsri.ac.id ---------------, 2010, Website: id.wikipedia.org ---------------, 2010, Website: www.polnam.ac.id ---------------, 2010, Website: www.joomlamalaysia.org ---------------, 2010, Website: agusstkj.blogspot.com ---------------, 2010, Website: www.sysneta.com
Respect to learn science
51