1 Pendahuluan
Perkembangan
teknologi komputer meningkat dengan cepat, hal ini terlihat pada era tahun
80-an jaringan komputer masih merupakan teka-teki yang ingin dijawab oleh
kalangan akademisi, dan pada tahun 1988 jaringan komputer mulai digunakan di
universitas-universitas, perusahaan-perusahaan, sekarang memasuki era milenium
ini terutama world wide internet telah menjadi realitas sehari-hari jutaan
manusia di muka bumi ini.
Selain
itu, perangkat keras dan perangkat lunak jaringan telah benar-benar berubah, di
awal perkembangannya hampir seluruh jaringan dibangun dari kabel koaxial, kini banyak telah diantaranya
dibangun dari serat optik (fiber
optics) atau komunikasi tanpa kabel.
Sebelum
lebih banyak lagi dijelaskan mengenai jaringan komputer secara teknis, pada bab
pendahuluan ini akan diuraikan terlebih
dahulu definisi jaringan komputer,
manfaat jaringan komputer, ddan macam jaringan komputer.
1.1 Definisi
Jaringan Komputer
Dengan
berkembangnya teknologi komputer dan komunikasi suatu model komputer tunggal
yang melayani seluruh tugas-tugas komputasi suatu organisasi kini telah diganti
dengan sekumpulan komputer yang
terpisah-pisah akan tetapi saling berhubungan dalam melaksanakan tugasnya,
sistem seperti ini disebut jaringan komputer (computer network).(1)
Dalam
buku ini kita akan menggunakan istilah jaringan komputer untuk mengartikan
suatu himpunan interkoneksi
sejumlah komputer yang autonomous.
Dua buah komputer dikatakan terinterkoneksi bila keduanya dapat saling
bertukar informasui. Betuk koneksinya tidak harus melalui kawat tembaga saja
melainkan dapat emnggunakan serat optik, gelomabng mikro, atau satelit
komunikasi.
Untuk
memahami istilah jaringan komputer
sering kali kita dibingungkan dengan sistem terdistribusi (distributed system). Kunci
perbedaannya adalah bahwa sebuah sistem terdistribusi,keberadaan sejumlah
komputer autonomous bersifat transparan bagi pemakainya. Seseorang dapat
memberi perintah untuk mengeksekusi suatu program, dan kemudian program itupun
akan berjalan dan tugas untuk memilih
prosesor, menemukan dan mengirimkan file ke suatu prosesor dan menyimpan
hasilnya di tempat yang tepat mertupakan tugas sistem operasi. Dengan kata
lain, pengguna sistem terditribusi tidak akan menyadari terdapatnya banyak
prosesor (multiprosesor), alokasi tugas ke prosesor-prosesor, alokasi f\ile ke
disk, pemindahan file yang dfisimpan dan yang diperlukan, serta fungsi-fungsi
lainnya dari sitem harus bersifat otomatis.
Pada
suatu jaringan komputer, pengguna harus secara eksplisit log ke sebuah mesin,
secara eksplisit menyampaikan tugasnya dari jauh, secara eksplisity memindahkan
file-file dan menangani sendiri secara umum selusurh manajemen jaringan. Pada
sistem terdistribusi, tidak ada yang perlu dilakukan secara eksplisit, sermunya
sudah dilakukan secara otomatis oleh sistem tanpa sepengetahuan pemakai.
Dengan
demikian sebuah sistem terdistribusi adalah suatu sistem perangkat lunak yang
dibuat pada bagian sebuah jaringan komputer.
Perangkat lunaklah yang menentukan tingkat keterpaduan dan transparansi
jarimngan yang bersangkutan. Karena itu perbedaan jaringan dengan sistem
terdistribusi lebih terletak pada perangkat lunaknya (khususnya sistem
operasi), bukan pada perangkat kerasnya.
1.2 Manfaat
Jaringan Komputer
Sebelum
membahas kita masalah-masalah teknis
lebih mendalam lagi, perlu kiranya diperhatikan hal-hal yang membuat orang
tertarik pada jaringan komputer dan untuk apa jaringan ini digunakan. Manfaat
jaringan komputer bagi manusia dapat dikelompokkan pada jaringan untuk
perusahaan, jaringan untuk umum, dan masalah sosial jaringan.
1.1.1
Jaringan untuk perusahaan/organisasi
Dalam
membangun jaringan komputer di perusahaan/ organisasi, ada beberapa
keuntungan yang dapat diperoleh dalam
hal-hal resource sharing, reliabilitas tinggi, lebih ekonomis, skalabilitas,
dan media komunikasi.
Resource sharing bertujuan
agar seluruh program, peralatan, khususnya data dapat digunakan oleh setiap
orang yang ada pada jaringan tanpa terpengaruh oleh lokasi resource dan
pemakai. jadi source sharing adalah suatu usaha untuk menghilangkan kendala
jarak.
Dengan
menggunakan jaringan komputer akan memberikan reliabilitas tinggi yaitu adanya sumber-sumber alternatif pengganti jika terjadi masalah pada salah
satu perangkat dalam jaringan, artinya karena perangkat yang digunakan lebih
dari satu jika salah satu perangkat mengalami masalah, maka perangkat yang lain
dapat menggantikannya.
Komputer
yang kecil memiliki rasio harga/kinerja yang lebih baik dibanding dengan
komputer besar. Komputer mainframe memiliki kecepatan kurang lebih sepuluh kali
lipat kecepatan komputer pribadi, akan tetapi harga mainframe seribu kalinya
lebih mahal. Dengan selisih rasio harga/kinerja yang cukup besar ini
menyebabkan perancang sistem memilih
membangun sistem yang terdiri dari komputer-komputer pribadi dibanding menggunakan
mainframe.
Yang
dimaksud dengan skalabilitas yaitu
kemampuan untuk meningkatkan kinerja sistem secara berangsur-angsur sesuai
dengan beban pekerjaan dengan hanya menambahkan sejumlah prosesor. Pada
komputer mainframe yang tersentralisasi, jika sistem sudah jenuh, maka komputer
harus diganti dengan komputer yang mempunyai kemampuan lebih besar. Hal ini
membutuhkan biaya yang sangat besar dan dapat menyebabkan gangguan terhadap
kontinyuitas kerja para pemakai.
Sebuah
jaringan komputer mampu bertindak sebagai media
komunikasi yang baik bagi para
pegawai yang terpisah jauh. Dengan menggunakan jaringan, dua orang atau lebih
yang tinggal berjauhan akan lebih mudah bekerja sama dalam menyusun laporan.
1.1.2 Jaringan
untuk umum
Apa yang telah diulas di atas bahwa minat untuk
membangun jaringan komputer semata-mata hanya didasarkan pada alasan ekonomi
dan teknologi saja. Bila komputer mainframe yang besar dan baik dapat diperoleh dengan harga murah, maka akan
banyak perusahaan/organisasi yang menggunakannya.
Jaringan
komputer akan memberikan layanan yang berbeda kepada perorangan di rumah-rumah
dibandingkan dengan layanan yang diberikan pada perusahaan seperti apa yang
telah diulas di atas. Terdapat tiga hal pokok yang mejadi daya tarik jaringan komputer pada perorangan yaitu:
§ access ke informasi yang berada di tempat yang jauh
§ komunikasi orang-ke-orang
§ hiburan interaktif.
Ada bermacam-macam bentuk access ke infomasi jarak
jauh yang dapat dilakukan, terutama setelah berkembangnya teknologi internet ,
berita-berita di koran sekarang dapat di down load ke komputer kita melalui
internet, dan tidak hanya itu sekarang kita dapat melakukan pemesanan suatu
produk melalui internet, bisnis yang dikenal dengan istilah electronic commerce
(e-commerce), ini sekarang sedang
berkemang dengan pesat .
Dengan menggunakan internet kita juga dapat
melakukan komunikasi orang-ke orang , fasilitas electronic mail (e-mail)
telah dipakai secara meluas oleh jutaan orang. Komunikasi menggunakan e-mail
ini masih mengandung delay
atau waktu tunda.
Videoconference atau pertemuan
maya merupakan teknologi yang memungkinkan terjadinya komunikasi jarak jauh
tanpa delay. Pertemuan maya ini dapat pula digunakan untuk keperluan sekolah
jarak jauh, memperoleh hasil pemeriksaan medis seorang dokter yang berada di
tempat yang jauh, dan sejumlah aplikasi lainnya.
Video
on demand merupakan daya tarik ketiga dai
jaringan komputer bagi orang per orang dimana kita dapat memilih film atau acara televisi dari negara mana saja dan
kemudian ditampilkan di layar monitor kita.
1.1.3 Masalah
sosial jaringan
Penggunaan jaringan oleh masyarakat luas
akan menyebabkan masalah-masalah sosial, etika, dan politik. Internet telah
masuk ke segala penjuru kehidupan
masyarakat, semua orang dapat
memanfaatkannya tanpa memandang status sosial, usia, jenis kelamin.
Penggunaan internet tidak akan menimbulkan masalah selama subyeknya terbatas
pada topik-topik teknis, pendidikan atau hobi, hal-hal dalam batas norma-norma
kehidupan, tetapi kesulitan mulai muncul bila suatu situs di internet mempunyai topik yang sangat menarik perhatian orang,
seperti politik, agama, sex. Gambar-gambar yang dipasang di situs-situs
tersebut mungkin akan merupakan sesuatu yang sangat mengganggu bagi sebagian
orang. Selain itu, bentuk pesan-pesan tidaklah terbatas hanya pesan tekstual
saja. Foto berwarna dengan resolusi tinggi dan bahkan video clip singkatpun
sekarang dapat dengan mudah disebar-luaskan melalui jaringan komputer. Sebagian
orang dapat bersikap acuh tak acuh, tapi bagi sebgaian lainnya pemasangan
materi tertentu (misalnya pornografi ) merupakan sesuatu yang tidak dapat
diterima.
1.2
Macam Jaringan Komputer
Dalam mempelajari macam-macam jaringan
komputer terdapat dua klasifikasi yang sangat penting yaitu teknologi transmisi
dan jarak. Secara garis besar, terdapat dua jenis teknologi transmisi yaitu jaringan broadcast dan jaringan
point-to-point
Jaringan broadcast memiliki saluran komunikasi tunggal yang dipakai
bersama-sama oleh semua mesin yang ada pada jaringan.
Pesan-pesan berukuran kecil, disebut paket, yang
dikirimkan oleh suatu mesin akan diterima oleh mesin-mesin lainnya. Field
alamat pada sebuah paket berisi keterangan tentang kepada siapa paket tersebut
ditujukan. Saat menerima paket, mesin akan mencek field alamat. Bila paket
terserbut ditujukan untuk dirinya, maka mesin akan memproses paket itu , bila
paket ditujukan untuk mesin lainnya, mesin terserbut akan mengabaikannya.
Jaringan point-to-point terdiri dari beberapa koneksi pasangan individu dari
mesin-mesin. Untuk mengirim paket dari sumber ke suatu tujuan, sebuah paket pad
ajringan jenis ini mungkin harus melalui satu atau lebih mesin-mesin perantara.
Seringkali harus melalui baynak route yang mungkin berbeda jaraknya. Karena itu
algoritma rout memegang peranan penting pada jaringan point-to-point.
Pada umumnya jaringan yang
lebih kecil dan terlokalisasi secara geografis cendurung memakai broadcasting,
sedangkan jaringan yang lebih besar menggunakan point-to-point.
Kriteria alternatif untuk
mengklasifikasikan jaringan adalah didasarkan pada jaraknya. Tabel berikut ini
menampilkan klasifikasi sistem multiprosesor berdasarkan ukuran-ukuran
fisiknya.
Jarak antar prosesor
|
Prosesor di
tempat yang sama
|
Contoh
|
0,1 m
|
Papan rangkaian
|
Data flow machine
|
1 m
|
Sistem
|
Multicomputer
|
10 m
|
Ruangan
|
|
100 m
|
Gedung
|
Local Area Network
|
1 km
|
Kampus
|
|
10 km
|
Kota
|
Metropolitan Area Network
|
100 km
|
Negara
|
Wide area Network
|
1.000 km
|
Benua
|
|
10.000 km
|
Planet
|
The Internet
|
Tabel 1.1 Klasifikasi
prosesor interkoneksi berdasarkan jarak
Dari tabel di atas terlihat pada bagian paling atas adalah dataflow machine, komputer-komputer yang
sangat paralel yang memiliki beberapa unit fungsi yang semuanya bekerja untuk
program yang sama. Kemudian multicomputer, sistem yang berkomunikasi dengan cara mengirim pesan-pesannya melalui bus pendek
dan sangat cepat. Setelah kelas multicomputer adalah jaringan sejati,
komputer-komputer yang bekomunikasi dengan cara
bertukar data/pesan melalui kabel yang lebih panjang. Jaringan seperti
ini dapat dibagi menjadi local area network (LAN), metropolitan area network
(MAN), dan wide area network (WAN). Akhirnya, koneksi antara dua jaringan atau
lebih disebut internetwork. Internet merupakan salah satu contoh yang terkenal
dari suatu internetwork.
1.2.1
Local Area Network
Local Area
Network (LAN) merupakan jaringan milik pribadi di dalam sebuah gedung atau
kampus yang berukuran sampai beberapa kilometer.
LAN seringkali
digunakan untuk menghubungkan komputer-komputer pribadi dan workstation dalam
kantor perusahaan atau pabrik-pabrik untuk memakai bersama resource (misalnya,
printer, scanner) dan saling bertukar informasi. LAN dapat dibedakan dari jenis
jaringan lainnya berdasarkan tiga karakteristik: ukuran, teknologi transmisi
dan topologinya.
LAN mempunyai ukuran yang terbatas, yang berarti bahwa waktu transmisi
pada keadaan terburuknya terbatas dan dapat diketahui sebelumnya. Dengan
mengetahui keterbatasnnya, menyebabkan adanya kemungkinan untuk menggunakan
jenis desain tertentu. Hal ini juga memudahkan manajemen jaringan.
LAN seringkali menggunakan teknologih transmisi kabel tunggal. LAN
tradisional beroperasi pada kecepatan mulai 10 sampai 100 Mbps (mega
bit/detik) dengan delay rendah (puluhan
mikro second) dan mempunyai faktor kesalahan yang kecil. LAN-LAN modern dapat
beroperasi pada kecepatan yang lebih tinggi, sampai ratusan megabit/detik.
Terdapat beberapa macam topologi yang dapat
digunakan pada LAN broadcast. Gambar 1.1 menggambarkan dua diantara
topologi-topologi yang ada. Pada jaringan
bus (yaitu kabel liner), pada suatu saat sebuah mesin bertindak sebagai
master dan diijinkan untuk mengirim
paket. Mesin-mesin
lainnya perlu menahan diri untuk tidak
mengirimkan apapun. Maka untuk mencegah terjadinya konflik, ketika dua mesin
atau lebih ingin mengirikan secara bersamaan, maka mekanisme pengatur
diperlukan. Me4kanisme pengatur dapat berbentuk tersentralisasi atau
terdistribusi. IEEE 802.3 yang populer disebut Ethernet merupakan jaringan
broadcast bus dengan pengendali terdesentralisasi yang beroperasi pada
kecepatan 10 s.d. 100 Mbps. Komputer-komputer pada Ethernet dapat mengirim
kapan saja mereka inginkan, bila dua buah paket atau lebih bertabrakan, maka
masing-masing komputer cukup menunggu dengan waktu tunggu yang acak sebelum mengulangi
lagi pengiriman.
Sistem broadcast yang lain adalah ring, pada topologi ini
setiap bit dikirim ke daerah sekitarnya tanpa menunggu paket lengkap diterima.
Biasanya setiap bit mengelilingi ring dalam waktu yang dibutuhkan untuk mengirimkan
beberapa bit, bahkan seringkali sebelum paket lengkap dikirim seluruhnya.
Seperti sistem broadcast lainnya, beberapa aturan harus dipenuhi untuk
mengendalikan access simultan ke ring. IEEE 802.5 (token ring) merupakan LAN
ring yang populer yang beroperasi pada kecepatan antara 4 s.d 16 Mbps.
Berdasarkan alokasi
channelnya, jaringan broadcast dapat dibagi menjadi dua, yaitu statik dan
dinamik. Jenis al;okasi statik dapat dibagi berdasarkan waktu interval-interval
diskrit dan algoritma round robin, yang mengijinkan setiap mesin untuk
melakukan broadcast hanya bila slot waktunya sudah diterima. Alokasi statik
sering menyia-nyiakan kapasitas channel bila sebuah mesin tidak punya lgi yang
perlu dikerjakan pada saat slot alokasinya diterima. Karena itu sebagian besar
sistem cenderung mengalokasi channel-nya secara dinamik (yaitu berdasarkan kebutuhan).
Metoda alokasi dinamik
bagi suatu channel dapat tersentralisasi ataupun terdesentralisasi. Pada metoda
alokasi channel tersentralisasi terdapat sebuah entity tunggal, misalnya unit
bus pengatur, yang menentukan siapa giliran berikutnya. Pengiriman paket ini
bisa dilakukan setelah menerima giliran
dan membuat keputusan yang berkaitan dengan algoritma internal. Pada metoda
aloksi channel terdesentralisasi, tidak terdapat entity sentral, setiap mesin
harus dapat menentukan dirinya sendiri kapan bisa atau tidaknya mengirim.
1.2.2
Metropolitan Area Network
Metropolitan Area Network (MAN)
pada dasarnya merupakan versi LAN yang berukuran lebih besar dan biasanya
memakai teknologi yang sama dengan LAN.
MAN dapat mencakup kantor-kantor perusahaan yang berdekatan dan dapat
dimanfaatkan untuk keperluan pribadi (swasta) atau umum. MAN biasanya mamapu
menunjang data dan suara, dan bahkan dapat berhubungan dengan jaringan televisi
kabel. MAN hanya memiliki sebuah atau dua buiah kabel dan tidak mempunyai
elemen switching, yang berfungsi untuk mengatur paket melalui beberapa output
kabel. Adanya elemen switching membuat rancangan menjadi lebih sederhana.
Alasan utama memisahkan
MAN sebagai kategori khusus adalah telah ditentukannya standart untuk MAN, dan
standart ini sekarang sedang diimplementasikan. Standart tersebut disebut DQDB (Distributed Queue Dual
Bus) atau 802.6 menurut standart IEEE. DQDB terdiri dari dua buah kabel unidirectional dimana semua komputer
dihubungkan, seperti ditunjukkan pada gambar 1.2. Setiap bus mempunyai sebuah
head–end, perangkat untuk memulai aktivitas transmisi. Lalulintas yang menuju
komputer yang berada di sebelah kanan pengirim menggunakan bus bagian atas.
Lalulintas ke arah kiri menggunakan bus yang berada di bawah.
1.2.3 Wide Area Network
Wide Area Network
(WAN) mencakup daerah geografis yang luas, sertingkali mencakup sebuah
negara atau benua. WAN terdiri dari kumpulan mesin
yang bertujuan untuk mejalankan program-program aplikasi.
Kita akan mengikuti penggunaan tradisional dan menyebut
mesin-mesin ini sebagai host. Istilah End System
kadang-kadang juga digunakan dalam
literatur. Host dihubungkan dengan sebuah subnet komunikasi, atau cukup disebut
subnet. Tugas subnet adalah membawa pesan dari host ke host lainnya, seperti
halnya sistem telepon yang membawa isi pembicaraan dari pembicara ke pendengar.
Dengan memisahkan aspek komunikasi murni sebuah jaringan (subnet) dari
aspek-aspek aplikasi (host), rancangan jaringan lengkap menjadi jauh lebih
sederhana.
Pada sebagian besar WAN, subnet terdiri dari dua komponen, yaitu kabel
transmisi dan elemen switching. Kabel transmisi (disebut juga sirkuit, channel, atau trunk)
memindahkan bit-bit dari satu mesin ke
mesin lainnya.
Element switching adalah komputer khusus yang dipakai untuk
menghubungkan dua kabel transmisi atau lebih. Saat data sampai ke kabel
penerima, element switching harus memilih kabel pengirim untuk meneruskan
pesan-pesan tersebut. Sayangnya tidak ada terminologi standart dalam menamakan
komputer seperti ini. Namanya sangat
bervariasi disebut paket switching node, intermidiate system, data switching
exchange dan sebagainya.
Gambar 1.4
Hubungan antara host-host dengan subnet
Sebagai istilah generik bagi komputer switching, kita akan menggunakan
istilah router. Tapi perlu diketahui terlebih dahulu bahwa tidak ada konsensus
dalam penggunaan terminologi ini. Dalam model ini, seperti ditunjukkan oleh
gambar 1.4 setiap host dihubungkan ke LAN tempat dimana terdapat sebuah router,
walaupun dalam beberapa keadaan tertentu sebuah host dapat dihubungkan langsung
ke sebuah router. Kumpulan saluran komunikasi dan router (tapi bukan host) akan
membentuk subnet.
Istilah subnet sangat penting, tadinya subnet berarti kumpulan kumpulan
router-router dan saluran-sakuran komunikasi yang memindahkan paket dari host
host tujuan. Akan tatapi, beberpa tahun kemudian subnet mendapatkan arti
lainnya sehubungan dengan pengalamatan jaringan.
Pada sebagian besar WAN, jaringan terdiri dari sejumlah banyak kabel
atau saluran telepon yang menghubungkan sepasang router. Bila dua router yang
tidak mengandung kabel yang sama akan melakukan komunikasi, keduanya harus berkomunikasi
secara tak langsung melalui router lainnya. ketika sebuah paket dikirimkan dari
sebuah router ke router lainnya melalui router perantara atau lebih, maka paket
akan diterima router dalam keadaan lengkap, disimpan sampai saluran output
menjadi bebas, dan kemudian baru diteruskan.
(a)Bintang (b)Cincin
(c)Pohon (d)Lengkap (e) Cincin
berinteraksi (f)Sembarang.
Subnet yang mengandung prinsip seperti ini
disebut subnet point-to-point, store-and-forward, atau packet-switched. Hampir
semua WAN (kecuali yang menggunakan satelit) memiliki subnet store-and-forward.
Di dalam
menggunakan subnet point-to-point, masalah rancangan yang penting adalah
pemilihan jenis topologi interkoneksi router. Gambar 1.5 menjelaskan beberapa
kemungkinan topologi. LAN biasanya
berbentuk topologi simetris, sebaliknya WAN umumnya bertopologi tak menentu.
1.2.4 Jaringan Tanpa Kabel
Komputer
mobile seperti komputer notebook dan personal digital assistant (PDA), merupakan cabang industri komputer
yang paling cepat pertumbuhannya. Banyak pemilik jenis komputer tersebut yang
sebenarnya telah memiliki mesin-mesin desktop yang terpasang pada LAN atau WAN
tetapi karena koneksi kabel tidaklah mungkin dibuat di dalam mobil atau pesawat
terbang, maka banyak yang tertarik untuk memiliki komputer dengan jaringan
tanpa kabel ini.
Jaringan tanpa kabel mempunyai berbagai
manfaat, yang telah umum dikenal adalah kantor portable. Orang yang sedang
dalam perjalanan seringkali ingin menggunakan peralatan elektronik portable-nya
untuk mengirim atau menerima telepon, fax, e-mail, membaca fail jarak jauh
login ke mesin jarak jauh, dan sebagainya dan juga ingin melakukan hal-hal
tersebut dimana saja, darat, laut, udara. Jaringan tanpa kabel sangat
bermanfaat untuk mengatasi masalah-masalah di atas.
Wireless
|
Mobile
|
Aplikasi
|
Tidak
|
Tidak
|
Worksation tetap di kantor
|
Tidak
|
Ya
|
Komputer portable terhubung
ke len telepon
|
Ya
|
Tidak
|
LAN dengan komunikasi wireless
|
Ya
|
Ya
|
Kantor portable, PDA untuk persediaan
|
Tabel 1.2 Kombinasi jaringan tanpa kabel dan komputasi
mobile
Walaupun jaringan tanpa kabel dan sistem
komputasi yang dapat berpindah-pindah sering kali berkaitan erat, sebenarnya
tidaklah sama, seperti yang tampak pada tabel 1.2. Komputer portabel
kadang-kadang menggunakan kabel juga, yaitu disaat seseorang yang sedang dalam
perjalanan menyambungkan komputer portable-nya ke jack telepon di sebuah hotel,
maka kita mempunyai mobilitas yang bukan jaringan tanpa kabel. Sebaliknya, ada
juga komputer-komputer yang menggunakan jaringan tanpa kabel tetapi bukan
portabel, hal ini dapat terjadi disaat komputer-komputer tersebut terhubung
pada LAN yang menggunakan fasilitas komunikasi wireless (radio).
Meskipun jaringan tanpa kabel ini cukup
mudah untuk di pasang, tetapi jaringan macam ini memiliki banyak kekurangan.
Biasanya jaringan tanpa kabel mempunyai kemampuan 1-2 Mbps, yang mana jauh
lebih rendah dibandingkan dengan
jaringan berkabel. Laju kesalahan juga sering kali lebih besar, dan transmisi dari
komputer yang berbeda dapat mengganggu satu sama lain.
1.4 Referensi
1.
Tanenbaum, AS,
Computer Networks, Prentise Hall, 1996
2.
Stallings,
W. Data and Computer Communications,
Macmillan Publishing Company, 1985.
2 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.
2.1
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.
cation
|
Application
|
Lapisan Atas
|
ation
|
||
ession
|
||
ransport
|
Data Transport
|
Lapisan Bawah
|
rk
|
||
ta Link
|
||
cal
|
Tabel 2.1 Pemisahan Lapisan atas dan Lapisan bawah
pada model OSI
2.2 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.
2.3.2 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.
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.
2.3.4 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.
2.3.5 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.
2.3.6 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.
2.3.7 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.
2.4 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.
Gambar 2.2 Contoh tentang bagaimana model OSI digunakan
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.
2.5 Referensi
1. Tanenbaum, AS,
Computer Networks, Prentise Hall, 1996
2. Stallings, W. Data and Computer Communications, Macmillan Publishing Company,
1985.
3. Stallings, W. Local Network, Macmillan Publishing Company, 1985.
4. Raj Jain, Professor of CIS The Ohio State University Columbus,
OH 43210
Jain@ACM.Org
5. Cisco Press
3
Data Link Control
Pembahasan kita kali ini
mengenai pengiriman sinyal melewati sebuah saluran transmisi, agar komunikasi
dapat efektif banyak hal tentang pengendalian dan managemen pertukaran yang
harus diperhatikan. Data link control ini bekerja di lapisan ke dua pada model referensi OSI.
Beberapa hal yang diperlukan
untuk mengefektifkan komunikasi data antara dua stasiun transmiter dan receiver
adalah:
Ø Sinkronisasi frame, data yang dikirimkan
dalam bentuk blok disebut frame. Awal dan akhir suatu frame harus
teridentifikasi dengan jelas.
Ø Menggunakan salah satu dari konfigurasi saluran, akan dibahas pada bab
selanjutnya.
Ø Kendali Aliran, stasiun pengirim harus
tidak mengirimkan frame sebelum memastikan bahwa data yang dikirimkan
sebelumnya telah sampai.
Ø Kendali kesalahan,
bit-bit kesalahan yang ditunjukkan oleh sistem transmisi harus benar.
Ø Pengalamat, pada sebuah
saluran multipoint, indentitas dari dua buah stasiun dalam sebuah transmisi
harus dikenali.
Ø Kendali dan data dalam
beberapa saluran, biasanya tidak diperlukan sinyal kontrol dalam sistem komunikasi yang terpisah, maka
penerima harus dapat membedakan informasi
kendali dari data yang dirimkan.
Ø Managemen hubungan,
inisiasi, perbaikan, akhir dari suatu data exchange memerlukan beberapa
korodinasi dan kerja sama antar stasiun.
3.1
Konfigurasi Saluran
Tiga karakteristik yang membedakan macam-macam konfigurasi
saluran adalah topologi, dupleksitas, dan disiplin saluran.
3.1.1
Topologi dan dupleksitas.
Topologi dari sebuah hubungan data
berkenaan dengan susunan fisik dari sebuah stasiun pada sebuah hubungan.jika
hanya terdapat dua buah stasiun maka hubungan yang dapat dibangun diantara
keduanya adalah point-to-poitn. Jika terdapat lebih dari dua stasiun, maka
harus digunakan topoloty multipoint. Dahulu, sebuah hubungan multipoint
digunakan pada suatu kasus hubungan antara sebuah komputer (stasiun primer) dan
satu set terminal (stasiun sekunder), tetapi sekarang untuk versi yang lebih
kompleks topologi multipoint digunakan pada jaringan lokal.
Saluran multipoint tradisional memungkinkan dibuat ketika sebuah terminal
hanya mengirim pada satu saat. Gambar 3.1 menunjukkan keuntungan dari
konfigurasi multipoint. Jika tiap-tiap komputer memiliki hubungan
point-to-point ke suatu komputer jadi
komputer harus harus mempunyai sebuah I/O port untuk masing-masing terminal.
Jadi terdapat sebuah saluran transmisi yang terpisah dari komputer ke
masing-masing terminal. Di dalam sebuah konfigurasi multipoint, komputer
memerlukan hanya sebuah I/O port, hanya sebuah saluran transmisi yang
diperlukan.
Dupleksitas dari sebuah hubungan berkenaan dengan arah dan waktu aliran
sinyal. Dalam transmisi simpleks, aliran sinyal selalu dalam satu arah. Sebagai
contoh, sebuah perangkat input hanya dapat mentransmisikan, dan tidak pernah
menerima. Sebuah perangkat output misalnya sebuah printer atau aktuator dapat
dikonfigurasi hanya sebagai penerima. Simpleks tidak lazim digunakan karena dia
tidak mungkin mmngirim ulang kesalahan atau sinyal kontrol ke sumber data . Simpleks identik dengan satu jalan ada satu lintasan.
Sebuah
hubungan half-dupleks dapat mengirim dan menerima tetapi tidak simultan. Mode
ini seperti dua lintasan alternatif, dua stasiun dalam sebuah hubungan
half-dupleks harus bergantian dalam mentransmisikan sesuatu. Hal ini dentik
dengan satu jalan ada dua lintasan. Dalam sebuah hubungan full-dupleks, dua
buah stasiun dapat mengirim dan menerima secara simultan data dari yang satu ke
yang lain. Sehingga pada mode ini dikenal sebagai dua lintasan simultan, dan
mungkin sebanding dengan dua jalan ada dua lintasan.
Sejumlah
kombinasi dari topologi dan dupleksitas yang mungkin terjadi dapat dilihat pada
gambar 3.2 yang melukiskan sebagian keadaan konfigurasi. Gambar selalu
menunjukkan sebuah stasiun primer (P) tunggal dan lebih dari satu stasiun
sekunder (S). Untuk hubungan point-to-point , dua kemungkinan dapat dijelaskan.
Untuk hubungan multipoint, tiga konfigurasi mungkin terjadi:
Ø Primary full-duplex, secondaries
half-duplex (multi-multipoint).
Ø Both primary and secondaries half-duplex
(multipoint half-duplex).
Ø Both primary and secondaries full-duplex
(multipoint duplex).
3.1.2 Disiplin saluran
Beberapa disiplin diperlukan
dalam menggunakan sebuah hubungan tarnsmisi. Pada sebuah hubungan half-duplex,
hanya sebuah stasiun pada suatu waktu yang harus mengirim. Pada kasus yang
lain, hubungan half atau full-duplex, sebuah setasiun hanya dapat mengirim jika
dia tahu bahwa di sisi penerima telah siap untuk menerima.
Hubungan
point-to-point.
Disiplin saluran adalah
sederhana dengan sebuah hubungan point-to-point. Marilah pertimbangkan
pertama-tama sebuah hubungan half-duplex dalam masing-masing stasiun telah siap menerima perubahan. Sebuah contoh perubahan dilukiskan pada gambar 3.3
Jika masing-masing stasiun menginginkan untuk mengirimkan data ke yang lain,
yang pertama dilakukan adalah mengetahui apakah stasiun tujuan telah siap untuk
menerima. Stasiun kedua menjawab dengan sebuah positive acknowledge (ack) untuk
mengindikasikan bahwa dia telah siap. Stasiun pertama kemudian mengirim
beberapa data yang telah dibentuk dalam frame. Pada komunikasi asinkron data
akan dikirim seperti sebuah deretan karakter asinkron. Dalam beberapa kasus,
setelah beberapa quantum data dikirimkan , stasiun pertama berhenti untuk
menunggu jawaban. Stasiun kedua menjawab keberhasilan menerima data dengan ack.
Stasiun pertama kemudian mengirim akhir dari transmisi (eot) yang mengakhiri
komunikasi dan kembali ke keadaan awal.
Beberapa ciri tambahan
ditambahkan pada gambar 3.3 untuk melengkapi proses transmisi dengan kontrol
kesalahan. Sebuah negative acknowledgement (nak) digunakan untuk menandakan
bahwa sebuah stasiun belum siap menerima atau data diterima dalam keadaan
error. Sebuah stasiun mungkin mengabaikan jawan atau menjawab dengan pesan yang
cacat. Hasil dari kondisi ini ditunjukkan oleh garis kecil di dalam gambar,
garis tebal menandakan keadaan komunikasi yang normal. Jika sebuah keadaan tak
diinginkan terjadi, seperti sebuah nak atau invalid reply, sebuah stasiun
mungkin mengulang untuk memberikan aksi terakhir atau mungkin mengadakan
beberapa prosedure penemuan kembali kesalahan (erp).
Terdapat tiga phase penting dalam prosedur pengontrolan
komunikasi ini:
Ø Establishement, keputusan yang menentukan
stasiun yang mana harus mengirim dan stasiun yang mana harus siap-siap untuk
menerima.
Ø Data Transfer, data
ditransfer dalam satu atau lebih blok pengiriman.
Ø Termination pemberhentian
hubungan secara logika. (hubungan
transmitter-receiver).
Hubungan Multipoint
Pilihan dari disiplin saluran
untuk hubungan multipoint
tergantung pada penentuan
ada-tidaknya stasiun primer. Ketika terdapat sebuah stasiun primer, data hanya
akan ditukar antara stasiun primer dan stasiun sekunder, bukan antara sesama
stasiun sekunder. Sebagian besar disiplin bersama menggunakan situasi ini, yaitu semua perbedaan dari sebuah skema dikenal
sebagai poll dan select.
Ø Poll, stasiun primer meminta data dari
stasiun sekunder.
Ø Sellect, stasiun primer memiliki data untuk
dikirim dan diberitahukan ke stasiun sekunder bahwa data sedang datang.
Gambar 3.4 menunjukkan konsep
ini, dimana stasiun primer poll ke
stasiun sekunder dengan mengirim sebuah pesan singkat. Pada kasus ini, stasiun
sekunder tidak mengirim dan menjawab dengan beberapa pesan nak. Waktu
keseluruhan untuk urutan ini ditunjukkan dengan
TN = tprop
+ tpoll + tproc + tnak + tprop
dimana
:
TN : total
waktu untuk poll tanpa mengirim
tprop : waktu
propagasi = t1-t0 = t5-t4
tpoll : waktu untuk mengririm poll = t2-t1
tproc : waktu untuk
pross poll sebelum menerima jawaban
= t3-t2
tnak : waktu untuk
mengririm sebuah negative acknowledgment
= t4-t3
Gambar 3.4 juga menjelaskan
kasus dari sebuah keberhasilan poll, waktu yang dibutuhkan adalah:
TP = 3tprop
+ tpoll + tack + tdata + 2tproc
TP = TN
+ tprop + tdata + tproc
disini kita asumsikan waktu proses untuk
menjawab beberapa pesan adalah konstan.
Sebagian besar bentuk
polling bersama disebut roll-call polling, yang mana stasiun primer menyeleksi
masing-masing poll dari satsiun sekunder dalam sebuah urutan pra penentuan.
Dalam kasus sederhana, stasiun primer poll ke tiap-tiap stasiun sekunder dalam
urutan round robbin S1, S2, S3, . . . Sn, sampai semua stasiun sekunder
dan mengulang urutan. Waktu yang diperlukan dapat diekspersikan sebagai:
Tc = nTN
+ kTD
dimana
Tc : waktu untuk satu siklus polling
lengkap
TN :
waktu rata-rata untuk poll sebuah stasiun sekunder dari data transfer
TD:
waktu transfer data
n : jumlah stasiun sekunder
k :
jumlah stasiun sekundert dengan data untuk dikirim selama siklus.
Fungsi
penyeleksian ditunjukkan pada gambar 3.4c Terlihat bahwa empat transmisi
terpisah menerima transfer data dari stasiun primer ke stasiun sekunder. Sebuah
teknik alternatif disebut fast sellect. pada kasus ini penyeleksian pesan
termasuk data ditransfer (gambar 3.4d). Pertama kali mengganti dari stasiun
sekunder sebuah acknowledgement yang mengindikasikan bahwa stasiun telah
dipersiapkan untuk menerima dan telah menerima data dengan sukses. Pemilihan cepat adalah teristimewa
cocok untuk aplikasi dimana pesan pendek sering dikirimkan dan waktu transfer
untuk pesan tidak cukup lama dibanding waktu reply.
Penggunaan
dari roll-call polling untuk konfigurasi lain adalah mudah dijelaskan. Pada
kasus multi-multipoint (gambar 3.2c), stasiun primer dapat mengirim sebuah poll
ke salah satu stasiun sekunder pada waktu yang samadia menerima sebuah pesan
kontrol atau data dari yang lain. Untuk multipoint duplex stasiun primer dapat
digunakan dalam komunikasi full duplex dengan beberapa stasiun sekunder.
Sebuah
karakteristik dari semua saluran disiplin multipoint adalah membutuhkan
pengalamatan. Dalam kasus roll call polling pengirirman dari sebuah stasiun
sekunder harus diidentifikasi. Pada sebuah situasi, kedua pengirim dan penerima
harus diidentifikasi. Terdapat tiga keadaan, yaitu:
Ø point-to-point : tidak memerlukan
pengalamatan
Ø primary-secundary multipoint : sebuah
alamat diperlukan untuk mengidentifikasi stasiun sekunder.
Ø peer multipoint : diperlukan dua alamat,
untuk mengiden-tifikasi pengirim dan penerima.
3.2 Kontrol Aliran
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.
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.
3.2.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 3.6, 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) 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 diantara
terminal-terminal (biasanya melalui sebuah terminal pengontrol yang berada di
depannya) dan akses pengontrolan untuk hubungan komunikasi.
Urutan sederhana ditunjukkan
pada gambar 3.6 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 3.7 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 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 6).
Efek delay propagasi dan kecepatan transmisi
Kita akan
menentukan efisiensi maksimum dari sebuah jalur point-to-point menggunakan
skema stop and wait. Total waktu yang diperlukan untuk mengirim
data adalah :
Td
= TI + nTF
dimana TI = waktu untuk menginisiasi urutan = tprop
+ tpoll + tproc
TF = waktu untuk mengirim satu frame
TF = tprop + tframe + tproc
+ tprop + tack + tproc
tprop = waktu propagasi
tframe
= waktu pengiriman
tack = waktu balasan
Untuk menyederhanakan persamaan
di atas, kita dapat mengabaikan term. Misalnya, untuk sepanjang urutan frame, TI
relatif kecil sehingga dapat diabaikan. Kita asumsikan bahwa waktu proses
antara pengiriman dan penerimaan diabaikan dan waktu balasan frame adalah
sangat kecil, sehingga kita dapat mengekspresikan TD sebagai
berikut:
TD = n(2tprop
+ t frame)
Dari keseluruhan waktu yang
diperlukan hanya n x t frame yang dihabiskan selama pengiriman data sehingga
utilization (U) atau efisiensi jalur diperoleh :
3.2.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
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
3.8 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 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.
3.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.
3.3.1 Kode-kode Pengkoreksian Error
Para
perancang jaringan telah membuat dua strategi dasar yang berkenaan dengan
error. Cara pertama adalah dengan melibatkan informasi redundan secukupnya
bersama-sama 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. 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 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.
Sebagai
sebuah contoh sederhana bagi kode pendeteksian error, ambil sebuah kode dimana
parity bit tunggal ditambahkan ke data. Parity bit dipilih supaya jumlah
bit-bit 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 pola bit n+1. Karena jumlah total pola bit adalah
2n, kita harus memiliki (n+1)2m £ 2n.
Dengan
memakai n = m + r, persyaratan ini menjadi (m + r + 1)£2r. Bila
m ditentukan, maka ini akan meletakkan batas bawah pada jumlah bit check yang
diperlukan untuk 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 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 3.10
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.
Gambar 3.10 Penggunaan kode Hamming untuk mengkoreksi
burst error
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.
3.2.2 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 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 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 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 –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 string-string bit sebagai representatsi polynomial dengan
memakai hanya koefisien 0 dan 1 saja. 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 xk-2, 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 bilangan
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 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. Hasilnya
merupakan frame berchecksum yang akan ditransmisikan. Disebut polynomial T(x).
Gambar
3-12 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, 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.
Gambar 3-12.Perhitungan checksum kode polynomial
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 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 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
Ketiganya mengandung x+1 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.
3.3 Kendali kesalahan
Tujuan
dilakukan pengontrolan terhadap error adalah untuk menyampaikan
frame-frame 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
à
Ack/Nak
: Provide sender some feedback about other end
à
Time-out:
for the case when entire packet or ack is lost
à 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):
à
Error
detection
à
Acknowledgment
à
Retransmission
after timeout
à
Negative
Acknowledgment
Macam-macam error control
adalah:
3.3.1
Stop and Wait ARQ
Mekanisme ini menggunakan
skema sederhana stop and wait
acknowledgment dan dapat dijelaskan seperti tampak pada gambar 3.13 Stasiun
pengirim mengirimkan sebuah frame dan kemudian harus menunggu balasan dari
penerima. Tidak ada frame data yang dapat dikirimkan sampai stasiun penerima
menjawab kedatangan pada stasiun pengirim. Penerima mengirim sebuah positive
acknowledgment (ACK) jika frame benar
dan sebuah negative acknoledgment jika sebaliknya.
3.3.2
Go Back N ARQ
Gambar 3.14 menampilkan
aliran frame untuk mekanisme go-back-and ARQ pada sebuah jalur full-duplex.
Ketika frame 2,3, dan 4 ditransmisikan, dari stasiun A ke stasiun B, sebuah ACK
dari penerimaan sebelumnya frame 1 mengalir dari B ke A. Beberapa waktu kemudian,
frame 2 diterima dalam kondisi error. Frame-frame 2,3,4 dan 5 dikirimkan,
stasiun B mengirim sebuah NAK2 ke stasiun A yang diterima setelah frame 5
dikirimkan tetapi sebelum stasiun A siap mengirim frame 6. Sekarang harus
dilakukan pengiriman ulang frame-frame 2,3,4, dan 5 waluapun hanya pada frame 2
terjadinya kesalahan. Sekali lagi, catat bahwa stasiun A harus sebuah copy dari
setiap unacknowledgment frame.
3.3.3
Selective-report ARQ
Pada mekanisme ini
sebenarnya mirip dengan mekanisme go-back-N ARQ bedanya, pada selective-report
ARQ yang dikirimkan hanyalah frame yang terjadi kesalahan saja. Gambar 3.14
menjelaskan mekanisme tersebut.
3.3.4
Contoh
Continuous ARQ
Untuk lebih memahami
mekanisme error control dari kedua mekanisme terakhir dan mengetahui perbedaan
diantara keduanya dapat dilihat tampilan pada gambar 3.15 yang memperlihatkan
aliran frame-frame secara kontinyu.
3.4. Referensi
1. Tanenbaum, AS,
Computer Networks, Prentise Hall, 1996
2. Stallings, W. Data and Computer Communications, Macmillan Publishing Company,
1985.
3. Stallings, W. Local Network, Macmillan Publishing Company, 1985.
4. Black, U.D, Data Communications and Distributed Networks, Prentise Hall.
5. Raj Jain, Professor of CIS The Ohio State University Columbus,
OH 43210
Jain@ACM.Org
http://www.cis.ohio-state.edu/~jain/cis677-98/
6. Cisco Press
http://www.cicso.com/cpress/cc/td/cpress/fund/ith2nd/it2401.html
DAFTAR PUSTAKA
1.
Tanenbaum, AS,
Computer Networks, Prentise Hall, 1996
2. Stallings, W. Data and Computer Communications, Macmillan Publishing Company,
1985.
3. Stallings, W. Local Network, Macmillan Publishing Company, 1985.
4. Black, U.D, Data Communications and Distributed Networks, Prentise Hall.
5.
Raj Jain, Professor of CIS The Ohio
State University
Columbus, OH
43210 Jain@ACM.Org
http://www.cis.ohio-state.edu/~jain/cis677-98/
6. Cisco Press
7. Atkins, Derek,dan Paul Buis, Chris Hare,
Robert Kelley, Carey Nachenberg, Anthony B. Nelson, Paul Phillips, Tim Ritchey,
Tom Sheldom, Joel Snyder, Internet
Security Professional Reference, Macmillan Computer Publishin
0 Response to "CONTOH MAKALAH TEKNOLOGI TEMA JARINGAN KOMPUTER"
Posting Komentar