Data Link

Metode Framing

Framing adalah sebuah mekanisme untuk membedakan antara satu frame dan frame yang lainnya pada jaringan komputer. Saat sebuah frame dikirim dari pengirim ke penerima, maka penerima harus mengetahui dan bisa membedakan apakah sebuah bit data ini termasuk kedalam frame satu atau frame kedua. saat sebuah bit stream memasuki layer data link, maka layer data link bertanggung jawab mengubah sebuah bit stream tersebut menjadi sekumpulan frame.

Asynchronous dan Synchronous Transmission

Sebelum mempelajari tentang metode framing lebih dalam, kamu harus memahami tentang synchronous & asynchronous transmision.

synchronous

(a) Asynchronous Transmission

asynchronous

(b) Synchoronous Transmission

Pada asynchronous transmission,  setiap byte/oktet yang dikirim ditambahkan sebuah start bit dan stop bit. Salah satu contoh penerapannya adalah pada ATM (Asynchronous Transfer Mode). Pada synchronous transmission, start bit dan stop bit dihilangkan dan byte-byte data digabung menjadi satu dimana diawal pengiriman frame ditambahkan sebuah flag dan diakhiri oleh flag. Contoh penerapannya ada pada HDLC, PPP, dan Ethernet.

Tipe Frame

Sebuah frame dapat bertipe fixed size framing ataupun variable size framing, jika sebuah protokol mempunyai frame yang fixed, maka tidak diperlukan sebuah flag (merupakan bit pattern yang disisipkan pada frame sebelum dikirim agar penerima dapat mengetahui awal dan akhir dari sebuah frame). Flag tidak diperlukan karena ukuran frame yang tetap (fixed size framing) dapat menjadi sebuah cara untuk merubah sebuah bit stream kedalam sebuah frame, contoh dari fixed size framing adalah ATM.

Pada frame yang mempunyai ukuran bervariasi (variable size framing), ada beberapa cara yang digunakan, yaitu :

  1. Character-Oriented Protocols
  2. Bit-Oriented Protocols

Character-Oriented Protocols

Palah satu contoh protokol data link yang menggunakan character-oriented protocols sebagai metode framingnya adalah protokol PPP. Sebelum dikirim, ditambahkan sebuah flag sebelum header dan juga ditambahkan sebuah flag sesudah trailer. Flag inilah yang dapat membedakan sebuah frame dan frame yang lain saat bit stream sampai di penerima.

Flag disini adalah sebuah bit pattern yaitu 01111110 atau jika dirubah menjadi heksadesimal yaitu 0x7E. Sedangkan payload adalah frame itu sendiri. Dengan menyisipkan flag ini diharapkan penerima dapat membedakan antara sebuah frame dan frame yang lain.

Ada satu masalah pada mekanime ini, bagaimana jika didalam payload terdapat bit pattern yang sama seperti flag?

Jika hal seperti ini terjadi, maka frame akan rusak karena komputer menganggap bahwa flag dalam payload adalah akhir dari frame, maka dari itu dalam character-oriented protocol ini ada sebuah mekanisme yaitu byte stuffing/character stuffing. Byte stuffing adalah mekanisme dimana jika terdapat sebuah flag dalam payload maka akan ditambahkan sebuah bit pattern unik lainnya yaitu ESC (01111101).  maka frame akan menjadi seperti berikut :

Ditambah sebuah ESC agar flag didalam payload dibaca sebagai data.

Bit-Oriented Protocols

Konsep antara character-oriented protocols dan bit-oriented protocols hampir sama, yaitu ditambahkannya flag diawal dan diakhir payload.Perbedaannya adalah bahwa character-oriented protocols membaca frame dalam sebuah heksa, sedangkan bit-oriented protocols membaca frame dalam sebuah binary dan perbedaan stuffingnya.

Pada bit-oriented protocols, ada istilah bit stuffing, yaitu jika didalam payload terdapat bit pattern seperti ini “011111“, yaitu bit 0 diikuti bit 1 sejumlah 5 secara berurutan, maka akan ada penambahan bit 0 setelah bit pattern tersebut.

Bisa dilihat dalam payload/frame tersebut, jika ada bit pattern “011111” maka akan ditambahkan bit 0 setelah bit pattern tersebut menjadi “0111110“. Protokol yang menggunakan bit-oriented salah satunya adalah HDLC.

 

Sumber :

  1. Computer Network Fifth Edition, Tanembaum
  2. Computer Network : A systems Approach, Larry L.
  3. Data Link Protocols, Uyless Black