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.
Gambar 1.1 Dua jenis jaringan broadcast. (a) Bus. (b) Ring
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.
Gambar 1.3 Arsitektur MAN DQDB
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.
Gambar 1.5
bebarapa topologi subnet untuk poin-to-point .
(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.
Gambar 2.1. Model Referensi OSI
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.
Gambar 3.1 Konfigurasi
terminal.
Gambar 3.2 Hubungan
konfigurasi saluran
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.
Gambar 3.3 Hubungan kendali
point-to-point
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 Poll and select
sequences
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.
Gambar 3.5 Diagram waktu flow control saat transmisi
tanpa kesalahan (a) dan saat terjadi kehilangan paket dan terjadi kesalahan (b)
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.
Gambar 3.6 Stop and wait data link control
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).
Gambar 3.7 Stop-and-wait alternating
sequence
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.
Gambar 3.8. Sliding window data link
control
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.
Gambar 3.9 Mekanisme sliding windows beserta contoh transimisi message
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 :
Gambar 3.11 Pertambahan dengan EXOR
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.
Gambar 3.13 Stop and wait ARQ
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.
Gambar 3.14 Go-back-N ARQ
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.
Gambar 3.14 Selective-report ARQ
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.
Gambar 3.15 Contoh continuous ARQ
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 Publishing,
0 komentar:
Posting Komentar