Model Referensi OSI
Model referensi OSI (Open
System Interconnection) menggambarkan bagaimana informasi dari suatu software
aplikasi di sebuah komputer berpindah
melewati sebuah media jaringan ke suatu software aplikasi di komputer
lain. Model referensi OSI secara konseptual terbagi ke dalam 7 lapisan dimana
masing-masing lapisan memiliki fungsi jaringan yang spesifik, seperti yang
dijelaskan oleh gambar 2.1 (tanpa media fisik). Model ini diciptakan
berdasarkan sebuah proposal yang dibuat oleh the International Standards
Organization (ISO) sebagai langkah awal menuju standarisasi protokol internasional
yang digunakan pada berbagai layer . Model ini disebut ISO OSI (Open System
Interconnection) Reference Model karena model ini ditujukan bagi pengkoneksian
open system. Open System dapat diartikan sebagai suatu sistem yang terbuka
untuk berkomunikasi dengan sistem-sistem lainnya. Untuk ringkas-nya, kita akan
menyebut model tersebut sebagai model OSI saja
Model OSI memiliki tujuh layer. Prinsip-prinsip yang digunakan bagi ketujuh
layer tersebut adalah :
1.
Sebuah layer harus dibuat bila
diperlukan tingkat abstraksi yang berbeda.
2.
Setiap layer harus memiliki
fungsi-fungsi tertentu.
3. Fungsi setiap layer harus
dipilih dengan teliti sesuai dengan ketentuan standar protocol internasional.
4.
Batas-batas layer diusahakan
agar meminimalkan aliran informasi yang melewati interface.
5. Jumlah layer harus cukup
banyak, sehingga fungsi-fungsi yang berbeda tidak perlu disatukan dalam satu
layer diluar keperluannya. Akan tetapi jumlah layer juga harus diusahakan
sesedikit mungkin sehingga arsitektur jaringan tidak menjadi sulit dipakai.
Di bawah ini kita membahas setiap layer pada model OSI secara berurutan, dimulai dari layer terbawah. Perlu dicatat bahwa model OSI itu sendiri bukanlah merupakan arsitektur jaringan, karena model ini tidak menjelaskan secara pasti layanan dan protokolnya untuk digunakan pada setiap layernya. Model OSI hanya menjelaskan tentang apa yang harus dikerjakan oleh sebuah layer. Akan tetapi ISO juga telah membuat standard untuk semua layer, walaupun standard-standard ini bukan merupakan model referensi itu sendiri. Setiap layer telah dinyatakan sebagai standard internasional yang terpisah.
Karakteristik Lapisan OSI
Ke tujuh lapisan dari
model referensi OSI dapat dibagi ke dalam dua kategori, yaitu lapisan atas dan
lapisan bawah.
Lapisan atas dari model OSI berurusan dengan persoalan aplikasi dan
pada umumnya diimplementasi hanya pada software. Lapisan tertinggi (lapisan
applikasi) adalah lapisan penutup sebelum ke pengguna (user), keduanya,
pengguna dan lapisan aplikasi saling berinteraksi proses dengan software
aplikasi yang berisi sebuah komponen komunikasi. Istilah lapisan atas
kadang-kadang digunakan untuk menunjuk ke beberapa lapisan atas dari lapisan
lapisan yang lain di model OSI.
Lapisan bawah dari model OSI mengendalikan persoalan transport data.
Lapisan fisik dan lapisan data link diimplementasikan ke dalam hardware dan
software. Lapisan-lapisan bawah yang lain pada umumnya hanya diimplementasikan
dalam software. Lapisan terbawah, yaitu lapisan fisik adalah lapisan penutup
bagi media jaringan fisik (misalnya jaringan kabel), dan sebagai penanggung
jawab bagi penempatan informasi pada media jaringan. Tabel berikut ini menampilkan pemisahan kedua
lapisan tersebut pada lapisan-lapisan model OSI.
Application
|
Application
|
Lapisan Atas
|
Presentation
|
||
Session
|
||
Transport
|
Data Transport
|
Lapisan Bawah
|
Network
|
||
Data
Link
|
||
Physical
|
Tabel 2.1 Pemisahan Lapisan atas dan Lapisan bawah pada model OSI
Protokol
Model
OSI menyediakan secara konseptual kerangka kerja untuk komunikasi antar
komputer, tetapi model ini bukan merupakan metoda komunikasi. Sebenarnya
komunikasi dapat terjadi karena menggunakan protokol komunikasi. Di dalam
konteks jaringan data, sebuah protokol adalah suatu aturan formal dan
kesepakatan yang menentukan bagaimana komputer bertukar informasi melewati
sebuah media jaringan. Sebuah protokol mengimplementasikan salah satu atau
lebih dari lapisan-lapisan OSI. Sebuah variasi yang lebar dari adanya protokol
komunikasi, tetapi semua memelihara pada salah satu aliran group: protokol LAN,
protokol WAN, protokol jaringan, dan protokol routing. Protokol LAN beroperasi
pada lapisan fisik dan data link dari model OSI dan mendefinisikan komunikasi
di atas macam-macam media LAN. Protokol WAN beroperasi pada ketiga lapisan
terbawah dari model OSI dan mendefinisikan komunikasi di atas macam-macam WAN.
Protokol routing adalah protokol lapisan jaringan yang bertanggung jawab untuk
menentukan jalan dan pengaturan lalu lintas. Akhirnya
protokol
jaringan adalah berbagai protokol dari
lapisan teratas yang ada dalam sederetan protokol.
2.3 Lapisan-lapisan Model
OSI
2.3.1 Physical Layer
Physical Layer
berfungsi dalam pengiriman raw bit ke channel komunikasi. Masalah desain yang
harus diperhatikan disini adalah memastikan bahwa bila satu sisi mengirim data
1 bit, data tersebut harus diterima oleh sisi lainnya sebagai 1 bit pula, dan
bukan 0 bit. Pertanyaan yang timbul dalam hal ini adalah : berapa volt yang
perlu digunakan untuk menyatakan nilai 1? dan berapa volt pula yang diperlukan
untuk angka 0?. Diperlukan berapa mikrosekon suatu bit akan habis? Apakah
transmisi dapat diproses secara simultan pada kedua arahnya? Berapa jumlah pin
yang dimiliki jaringan dan apa kegunaan masing-masing pin? Secara umum
masalah-masalah desain yang ditemukan di sini berhubungan secara mekanik,
elektrik dan interface prosedural, dan media fisik yang berada di bawah
physical layer.
Data Link Layer
Tugas utama data link
layer adalah sebagai fasilitas transmisi raw data dan mentransformasi data
tersebut ke saluran yang bebas dari kesalahan transmisi. Sebelum diteruskan
kenetwork layer, data link layer melaksanakan tugas ini dengan memungkinkan
pengirim memecag-mecah data input menjadi sejumlah data frame (biasanya
berjumlah ratusan atau ribuan byte). Kemudian data link layer mentransmisikan
frame tersebut secara berurutan, dan memproses acknowledgement frame yang
dikirim kembali oleh penerima. Karena physical layer menerima dan mengirim
aliran bit tanpa mengindahkan arti atau arsitektur frame, maka tergantung pada
data link layer-lah untuk membuat dan mengenali batas-batas frame itu. Hal ini
bisa dilakukan dengan cara membubuhkan bit khusus ke awal dan akhir frame. Bila
secara insidental pola-pola bit ini bisa ditemui pada data, maka diperlukan
perhatian khusus untuk menyakinkan bahwa pola tersebut tidak secara salah
dianggap sebagai batas-batas fram
Terjadinya noise pada
saluran dapat merusak frame. Dalam hal ini, perangkat lunak data link layer
pada mesin sumber dapat mengirim kembali frame yang rusak tersebut. Akan tetapi
transmisi frame sama secara berulang-ulang bisa menimbulkan duplikasi frame.
Frame duplikat perlu dikirim apabila acknowledgement frame dari penerima yang
dikembalikan ke pengirim telah hilang. Tergantung pada layer inilah untuk
mengatasi masalah-masalah yang disebabkan rusaknya, hilangnya dan duplikasi
frame. Data link layer menyediakan beberapa kelas layanan bagi network layer.
Kelas layanan ini dapat dibedakan dalam hal kualitas dan harganya
Masalah-masalah
lainnya yang timbul pada data link layer (dan juga sebagian besar layer-layer
di atasnya) adalah mengusahakan kelancaran proses pengiriman data dari pengirim
yang cepat ke penerima yang lambat. Mekanisme pengaturan lalu-lintas data harus
memungkinkan pengirim mengetahui jumlah ruang buffer yang dimiliki penerima
pada suatu saat tertentu. Seringkali pengaturan aliran dan penanganan error ini
dilakukan secara terintegrasi.
Saluran yang dapat
mengirim data pada kedua arahnya juga bisa menimbulkan masalah. Sehingga dengan
demikian perlu dijadikan bahan pertimbangan bagi software data link layer.
Masalah yang dapat timbul di sini adalah bahwa frame-frame acknoeledgement yang
mengalir dari A ke B bersaing saling mendahului dengan aliran dari B ke A.
Penyelesaian yang terbaik (piggy backing) telah bisa digunakan; nanti kita akan
membahasnya secara mendalam.
Jaringan broadcast
memiliki masalah tambahan pada data link layer. Masalah tersebut adalah dalam
hal mengontrol akses ke saluran yang dipakai bersama. Untuk mengatasinya dapat
digunakan sublayer khusus data link layer, yang disebut medium access sublayer.
Masalah mengenai data link control akan diuraikan
lebih detail lagi pada bab tiga.
2.3.3 Network Layer
Network layer berfungsi untuk pengendalian operasi
subnet. Masalah desain yang penting adalah bagaimana caranya menentukan route
pengiriman paket dari sumber ke tujuannya. Route dapat didasarkan pada table
statik yang “dihubungkan ke” network. Route juga dapat ditentukan pada saat
awal percakapan misalnya session terminal. Terakhir, route dapat juga sangat
dinamik, dapat berbeda bagi setiap paketnya. Oleh karena itu, route pengiriman
sebuah paket tergantung beban jaringan saat itu.
Bila pada saat
yang sama dalam sebuah subnet terdapat terlalu banyak paket, maka ada
kemungkinan paket-paket tersebut tiba pada saat yang bersamaan. Hal ini dapat
menyebabkan terjadinya bottleneck. Pengendalian kemacetan seperti itu juga
merupakan tugas network layer.
Karena operator subnet mengharap bayaran yang baik
atas tugas pekerjaannya. seringkali terdapat beberapa fungsi accounting yang
dibuat pada network layer. Untuk membuat informasi tagihan, setidaknya software
mesti menghitung jumlah paket atau karakter atau bit yang dikirimkan oleh
setiap pelanggannya. Accounting menjadi lebih rumit, bilamana sebuah paket
melintasi batas negara yang memiliki tarip yang berbeda.
Perpindahan paket dari satu jaringan ke jaringan
lainnya juga dapat menimbulkan masalah yang tidak sedikit. Cara pengalamatan
yang digunakan oleh sebuah jaringan dapat berbeda dengan cara yang dipakai oleh
jaringan lainnya. Suatu jaringan mungkin tidak dapat menerima paket sama sekali
karena ukuran paket yang terlalu besar. Protokolnyapun bisa berbeda pula,
demikian juga dengan yang lainnya. Network layer telah mendapat tugas untuk
mengatasi semua masalah seperti ini, sehingga memungkinkan jaringan-jaringan
yang berbeda untuk saling terinterkoneksi.
Transport Layer
Fungsi dasar transport
layer adalah menerima data dari session layer, memecah data menjadi
bagian-bagian yang lebih kecil bila perlu, meneruskan data ke network layer,
dan menjamin bahwa semua potongan data tersebut bisa tiba di sisi lainnya
dengan benar. Selain itu, semua hal tersebut harus dilaksanakan secara efisien,
dan bertujuan dapat melindungi layer-layer bagian atas dari perubahan teknologi
hardware yang tidak dapat dihindari.
Dalam keadaan normal, transport layer membuat koneksi jaringan yang berbeda
bagi setiap koneksi transport yang diperlukan oleh session layer. Bila koneksi
transport memerlukan throughput yang tinggi, maka transport layer dapat membuat
koneksi jaringan yang banyak. Transport layer membagi-bagi pengiriman data ke
sejumlah jaringan untuk meningkatkan throughput. Di lain pihak, bila pembuatan
atau pemeliharaan koneksi jaringan cukup mahal, transport layer dapat
menggabungkan beberapa koneksi transport ke koneksi jaringan yang sama. Hal
tersebut dilakukan untuk membuat penggabungan ini tidak terlihat oleh session
layer.
Transport layer juga
menentukan jenis layanan untuk session layer, dan pada gilirannya jenis layanan
bagi para pengguna jaringan. Jenis transport layer yang paling populer adalah
saluran error-free point to point yang meneruskan pesan atau byte sesuai dengan
urutan pengirimannya. Akan tetapi, terdapat pula jenis layanan transport
lainnya. Layanan tersebut adalah transport pesan terisolasi yang tidak menjamin
urutan pengiriman, dan membroadcast pesan-pesan ke sejumlah tujuan. Jenis layanan ditentukan pada saat koneksi
dimulai.
Transport layer
merupakan layer end to end sebenarnya, dari sumber ke tujuan. Dengan kata lain,
sebuah program pada mesin sumber membawa percakapan dengan program yang sama
dengan pada mesin yang dituju. Pada layer-layer bawah, protokol terdapat di
antara kedua mesin dan mesin-mesin lain yang berada didekatnya. Protokol tidak
terdapat pada mesin sumber terluar atau mesin tujuan terluar, yang mungkin
dipisahkan oleh sejumlah router. Perbedaan antara layer
1 sampai 3 yang terjalin, dan layer 4 sampai 7 yang end to end. Hal ini dapat
dijelaskan seperti pada gambar 2-1.
Sebagai
tambahan bagi penggabungan beberapa aliran pesan ke satu channel, transport
layer harus hati-hati dalam menetapkan dan memutuskan koneksi pada jaringan.
Proses ini memerlukan mekanisma penamaan, sehingga suatu proses pada sebuah
mesin mempunyai cara untuk menerangkan dengan siapa mesin itu ingin
bercakap-cakap. Juga harus ada mekanisme untuk mengatur arus informasi, sehingga arus informasi dari host yang cepat tidak membanjiri host
yang lambat. Mekanisme seperti itu disebut pengendalian aliran dan memainkan
peranan penting pada transport layer (juga pada layer-layer lainnya). Pengendalian aliran
antara host dengan host berbeda dengan pengendalian aliran router dengan router. Kita akan mengetahui
nanti bahwa prinsip-prinsip yang sama digunakan untuk kedua jenis pengendalian
tersebut.
Session Layer
Session layer
mengijinkan para pengguna untuk menetapkan session dengan pengguna lainnya.
Sebuah session selain memungkinkan
transport data biasa, seperti yang dilakukan oleh transport layer, juga
menyediakan layanan yang istimewa untuk aplikasi-aplikasi tertentu. Sebuah
session digunakan untuk memungkinkan seseorang pengguna log ke remote
timesharing system atau untuk
memindahkan file dari satu mesin kemesin lainnya.
Sebuah layanan session
layer adalah untuk melaksanakan pengendalian dialog. Session dapat memungkinkan
lalu lintas bergerak dalam bentuk dua
arah pada suatu saat, atau hanya satu arah saja. Jika pada satu saat lalu lintas
hanya satu arah saja (analog dengan rel kereta api tunggal), session layer
membantu untuk menentukan giliran yang berhak menggunakan saluran pada suatu
saat.
Layanan session di
atas disebut manajemen token. Untuk sebagian protokol, adalah penting untuk memastikan
bahwa kedua pihak yang bersangkutan tidak melakukan operasi pada saat yang
sama. Untuk mengatur aktivitas ini,
session layer menyediakan token-token yang dapat digilirkan. Hanya pihak yang
memegang token yang diijinkan melakukan operasi kritis.
Layanan session lainnya adalah sinkronisasi. Ambil
contoh yang dapat terjadi ketika mencoba transfer file yang berdurasi 2 jam
dari mesin yang satu ke mesin lainnya dengan kemungkinan mempunyai selang waktu
1 jam antara dua crash yang dapat terjadi. Setelah masing-masing transfer dibatalkan, seluruh
transfer mungkin perlu diulangi lagi dari awal, dan mungkin saja mengalami
kegagalan lain. Untuk mengurangi kemungkinan terjadinya masalah ini, session
layer dapat menyisipkan tanda tertentu ke aliran data. Karena itu bila terjadi
crash, hanya data yang berada sesudah tanda tersebut yang akan ditransfer
ulang.
Pressentation Layer
Pressentation layer
melakukan fungsi-fungsi tertentu yang diminta untuk menjamin penemuan sebuah
penyelesaian umum bagi masalah tertentu. Pressentation Layer tidak mengijinkan
pengguna untuk menyelesaikan sendiri suatu masalah. Tidak seperti layer-layer
di bawahnya yang hanya melakukan pemindahan bit dari satu tempat ke tempat
lainnya, presentation layer memperhatikan syntax dan semantik informasi yang
dikirimkan.
Satu contoh layanan pressentation adalah encoding data. Kebanyakan pengguna tidak memindahkan
string bit biner yang random. Para pengguna saling bertukar data sperti nama
orang, tanggal, jumlah uang, dan tagihan. Item-item tersebut dinyatakan dalam
bentuk string karakter, bilangan interger, bilangan floating point, struktur
data yang dibentuk dari beberapa item yang lebih sederhana. Terdapat perbedaan
antara satu komputer dengan komputer lainnya dalam memberi kode untuk
menyatakan string karakter (misalnya, ASCII dan Unicode), integer (misalnya
komplemen satu dan komplemen dua), dan sebagainya. Untuk memungkinkan dua buah
komputer yang memiliki presentation yang berbeda untuk dapat berkomunikasi,
struktur data yang akan dipertukarkan dapat dinyatakan dengan cara abstrak,
sesuai dengan encoding standard yang akan digunakan “pada saluran”.
Presentation layer mengatur data-struktur abstrak ini dan mengkonversi dari
representation yang digunakan pada sebuah komputer menjadi representation
standard jaringan, dan sebaliknya.
Application Layer
Application layer
terdiri dari bermacam-macam protokol.
Misalnya terdapat ratusan jenis terminal yang tidak kompatibel di seluruh
dunia. Ambil keadaan dimana editor layar penuh yang diharapkan bekerja pada
jaringan dengan bermacam-macam terminal, yang masing-masing memiliki layout
layar yang berlainan, mempunyai cara urutan penekanan tombol yang berbeda untuk
penyisipan dan penghapusan teks, memindahkan sensor dan sebagainya.
Suatu cara untuk mengatasi masalah seperti di ata, adalah dengan menentukan
terminal virtual jaringan abstrak, serhingga editor dan program-program lainnya
dapat ditulis agar saling bersesuaian. Untuk menangani setiap jenis terminal,
satu bagian software harus ditulis untuk memetakan fungsi terminal virtual
jaringan ke terminal sebenarnya. Misalnya, saat editor menggerakkan cursor
terminal virtual ke sudut layar kiri, software tersebut harus mengeluarkan
urutan perintah yang sesuai untuk mencapai cursor tersebut. Seluruh software
terminal virtual berada pada application layer.
Fungsi application
layer lainnya adalah pemindahan file.
Sistem file yang satu dengan yang lainnya memiliki konvensi penamaan yang
berbeda, cara menyatakan baris-baris teks yang berbeda, dan sebagainya.
Perpindahan file dari sebuah sistem ke sistem lainnya yang berbeda memerlukan
penanganan untuk mengatasi adanya ketidak-kompatibelan ini. Tugas tersebut juga
merupakan pekerjaan appication layer, seperti pada surat elektronik, remote job
entry, directory lookup, dan berbagai fasilitas bertujuan umum dan fasilitas
bertujuan khusus lainnya.
Transmisi Data Pada
Model OSI
Gambar 1-17
menjelaskan sebuah contoh tentang bagaimana data dapat ditransmisikan dengan
menggunakan model OSI. Proses pengiriman memiliki data yang akan dikirimkan ke
proses penerima. Proses pengirim menyerahkan data ke application layer, yang
kemudian menambahkan aplication header, AH (yang mungkin juga kosong), ke ujung
depannya dan menyerahkan hasilnya ke presentation layer.
Pressentation layer
dapat membentuk data ini dalam berbagai cara dan mungkin saja menambahkan
sebuah header di ujung depannya, yang diberikan oleh session layer. Penting
untuk diingat bahwa presentation layer tidak menyadari tentang bagian data yang mana yang diberi tanda AH
oleh application layer yang merupakan data pengguna yang sebenarnya.
Proses pemberian
header ini berulang terus sampai data tersebut mencapai physical layer, dimana
data akan ditransmisikan ke mesin lainnya. Pada mesin tersebut, semua header
tadi dicopoti satu per satu sampai mencapai proses penerimaan.
Yang menjadi kunci di
sini adalah bahwa walaupun transmisi data aktual berbentuk vertikal seperti pada
gambar 1-17, setiap layer diprogram seolah-olah sebagai transmisi yang
bersangkutan berlangsung secara horizontal. Misalnya, saat transport layer
pengiriman mendapatkan pesan dari session layer, maka transport layer akan
membubuhkan header transport layer dan mengirimkannya ke transport layer
penerima.
Tidak ada komentar:
Posting Komentar