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 frame.
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.
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.
No comments:
Post a Comment