B A B XIII DATA LINK LAYER

Fungsi spesifik data link layer : a. Penyediaan interface layanan bagi network layer b. Penentuan cara pengelompokan bit dari physical layer ke dalam frame c. Menangani error transmisi d. Mengatur aliran frame Layanan Data Link Layer a. Connectionless b. Connection c. Oriented Connection 1. Framing Salah satu cara pembuatan frame adalah dengan menyisipkan gap waktu diantara dua buah frame, (seperti spasi antara 2 kata). Empat metode framing yang digunakan : a. Karakter penghitung b. Pemberian karakter awal dan akhir, dengan pengisian karakter c. Pemberian flag awal dan akhir, dengan pengisian bit d. Pelanggaran pengkodean physical layer Metode 1 Menggunakan sebuah field pada header untuk menspesifikasikan jumlah karakter didalam frame. Ketika data link layer pada mesin yang dituju melihat karakter penghitung, maka data link layer akan mengetahui jumlah yang mengikutinya, dan kemudian juga akan mengetahui posisi ujung framenya. Metode 2 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=Data Link Escape, STX= Start of TeXt, ETX=End of TeXt). Bila tempat yang dituju kehilangan track batas-batas frame, maka yang perlu dilakukan adalah mencari karakter-karakter DLE STX dan DLE ETX. Character stuffing (pengisian karakter) adalah teknik membuat data link layer pengirim menyisipkan sebuah karakter DLE ASCII tepat sebelum karakter DLE "insidentil" pada data, sehingga data link pada mesin penerima membuang DLE sebelum data diberikan ke network layer. Hal tersebut digunakan untuk menangani masalah transmisi untuk data biner, seperti program object, bilangan floating-point yang mudah sekali menganggu framing. Kerugiannya adalah berkaitan erat dengan karakter 8-bit secara umum dan kode karakter ASCII pada khususnya. Metode 3 Teknik baru adalah setiap 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 datalink secara otomatis mengisikan sebuah bit 0 ke aliran bit keluar. Pengisian bit ini analog dengan pengisian karakter, dimana sebuah DLE diisikan ke aliran karakter keluar sebelum DLE pada data. Metode 4 Hanya bisa digunakan bagi jaringan yang encoding pada medium fisiknya mengandung beberapa redundansi (pengulangan). Misalnya, sebagian LAN melakukan encode bit 1 data dengan menggunakan 2 bit fisik. Manfaat kode fisik tersebut merupakan bagian standar LAN 802. Banyak protokol datalink yang memakai kombinasi sebuah hitungan karakter menggunakan metode lainnya dengan alasan keamanan tambahan. Frame akan berlakuk hanya bila terdapat delimiter yang sesuai pada posisi tertentu dan checksum-nya benar. Bila tidak, aliran input akan disisir untuk mencari delimiter berikutnya. 2. Kontrol Error Cara umum menjamin pengiriman reliabel adalah memberikan pengirim beberapa feedback tentang apa yang terjadi di sisi lain dari saluran, yaitu kontrol khusus berupa acknowledgement positif atau negatif. Acknowledgement positif, bahwa frame telah sampai dengan baik, begitu sebaliknya. Masalah timbul bila terjadi letupan noise (fungsi hardware tidak baik), yaitu bahwa penerima tidak bereaksi sama sekali (posisi menggantung). Untuk itu pemakaian timer ke dalam data link layer sangat dibutuhkan, yaitu pada saat pengirim mentransmisikan sebuah frame, pengirim juga mengaktifkan timer. Umumnya frame akan diterima dengan benar dan acknowledgment akan kembali sebelum timer habis. Pada saat terjadi kegagalan transmisi, akan terjadi permintaan ulang frame yang dikirimkan. Untuk menghindari duplikasi frame-frame yang diulang tersebut, diberikan urutan nomor. 3. Pengontrolan Aliran Masalah yang muncul adalah tentang apa yang dikerjakan oleh sebuah pengirim yang secara sistematis ingin mentransmisikan frame lebih cepat dibanding kecepatan penerima untuk menampungnya. Untuk mengatasi masalah tersebut, protokol berisi peraturan tentang kapan sebuah pengirim boleh mentransmisikan frame berikutnya. Peraturan-peraturan ini seringkali tidak mengijinkan frame dikirimkan sampai penerima memperoleh ijin (Anda dapat mengirim saya n buah frame sekarang, tapi sesudah frame-frame tersebut dikirimkan, jangan mengirimkan frame lainnya lagi sampai saya memberitahu anda untuk melanjutkan pengiriman). 4. Deteksi dan Koreksi Kesalahan Strategi pertama menggunakan kode-kode pengkoreksian error (error-correcting codes) dan strategi kedua menggunakan kode-kode pendeteksian error (error-detecting codes). Ketika penerima melihat codeword yang tidak valid, maka penerima dapat berkata bahwa telah terjadi error pada tranmisi (Codeword Hamming). Salah satu kode pendeteksian yang digunakan adalah kode polynomial/cyclic redundancy code (CRC). Contoh-contoh protokol data link · HDLC (High Level Data Link Control) Digunakan dalam jaringan X.25 Dengan bit pariti dikenal 3 deteksi kesalahan, yaitu : a. Vertical Redundancy Check / VRC Setiap karakter yang dikirimkan (7 bit) diberi 1 bit pariti. Bit pariti ini diperiksa oleh penerima untuk mengetahui apakah karakter yang dikirim benar atau salah. Cara ini hanya dapat melacak 1 bit dan berguna melacak kesalahan yang terjadi pada pengiriman berkecepatan menengah, karena kecepatan tinggi lebih besar kemungkinan terjadi kesalahan banyak bit. Kekurangan : bila ada 2 bit yang terganggu ia tidak dapat melacaknya karena paritinya akan benar. Contoh : ASCII huruf "A" adalah 41h 100 0001 ASCII 7 bit 1100 0001 ASCII dengan pariti ganjil 0100 0001 ASCII dengan pariti genap b. Longitudinal Redundancy Check / LRC LRC untuk data dikirim secara blok. Cara ini seperti VRC hanya saja penambahan bit pariti tidak saja pada akhir karakter tetapi juga pada akhir setiap blok karakter yang dikirimkan. Untuk setiap bit dari seluruh blok karakter ditambahkan 1 bit pariti termasuk juga bit pariti dari masing-masing karakter. DATA FLOW longitudinal check V C 1 0 1 0 0 1 1 0 1 LRC E H 1 0 0 1 0 1 0 0 0 Horizontal R E 0 1 1 0 0 0 0 0 1 Parity T C 0 0 0 1 1 1 0 1 1 Bits I K 1 0 0 0 1 0 0 1 0 C 0 0 0 1 1 0 1 0 0 A 1 1 1 0 0 1 1 0 0 L 1 1 0 0 0 1 0 1 0 Gambar Longitudinal Redundancy Check Tiap blok mempunyai satu karakter khusus yang disebut Block Check Character (BCC) yang dibentuk dari bit uji. dan dibangkitkan dengan cara sebagai berikut : " Tiap bit BCC merupakan pariti dari semua bit dari blok yang mempunyai nomor bit yang sama. Jadi bit 1 dari BCC merupakan pariti genap dari semua bit 1 karakter yang ada pada blok tersebut, dan seterusnya". Contoh : Bit 0 : 1 1 1 1 0 Bit 1 : 1 0 0 0 1 B Bit 2 : 0 0 0 0 0 C Bit 3 : 0 0 0 0 0 C Bit 4 : 0 0 0 0 0 Bit 5 : 0 0 0 0 0 Bit 6 : 1 1 1 1 0 Parity : 0 1 1 1 0 Kerugian : terjadi overhead akibat penambahan bit pariti per 7 bit untuk karakter. c. Cyclic Redundancy Check / CRC Digunakan pengiriman berkecepatan tinggi, sehingga perlu rangkaian elektronik yang sukar. Cara CRC mengatasi masalah overhead dan disebut pengujian berorientasi bit, karena dasar pemeriksaan kemungkinan kesalahan adalah bit atau karakter dan menggunakan rumus matematika yang khusus. Satu blok informasi dilihat sebagai sederetan bit yang ditransmisikan. Bit yang ditransmisikan dimasukkan kedalam register geser siklis yang disebut generator CRC. Operasi ini didasarkan atas pembagian deretan bit dengan sebuah fungsi khusus. Hasil bagi pembagian diabaikan. Sisanya disalurkan sebagai BCS (Block Check Sequence) Fungsi khusus tersebut disebut generator polynominal. 3. Framing Check.