22 Lampiran 1 Tabel harga Netop School Juni 2011
TINJAUAN PUSTAKA Jaringan Komputer
penting, terutama dalam bidang komunikasi. Namun demikian penggunaannya dalam bidang pendidikan memainkan peranan yang penting, yaitu penerapannya ke dalam laboratorium komputer untuk meningkatkan efektifitas kegiatan belajar-mengajar.
Belajar-mengajar dapat ditingkatkan melalui
kentungan yang diberikan penggunaan
jaringan komputer, yaitu kemudahan
penyampaian informasi dan kecepatan dalam
berbagi sumber daya yang mengatasi
rintangan jarak dan tempat.
NetOP School merupakan salah satu perangkat lunak edukasi yang memanfaatkan pemakaian jaringan komputer. Perangkat lunak ini dikembangkan untuk kegiatan
belajar-mengajar dalam lingkungan
laboratorium komputer. Perangkat lunak NetOP School memiliki sifat berbayar dan tidak dapat didistribusikan secara bebas. Oleh sebab itu, hanya lembaga pendidikan yang memiliki keuangan yang mencukupi yang dapat membelinya. Daftar harga NetOP School yang diambil beberapa situs web pada bulan Juni 2011 dapat dilihat pada Lampiran 1.
Salah satu fitur yang dimiliki NetOP School adalah screen sharing. Fitur ini mencakup fungsi-fungsi yang meliputi pengambilan gambar, kompresi gambar,
pengiriman gambar melalui jaringan
komputer, dan menampilkan gambar pada komputer klien. Fungsi screen sharing
diharapkan dapat digunakan sebagai pengganti proyektor pada laboratorium komputer,
sehingga dapat memberikan efek
penghematan dari sisi keuangan karena tidak perlu membeli proyektor.
Tujuan
Tujuan penelitian ini adalah membuat perangkat lunak screen sharing yang memiliki sifat yang open source serta multiplatform. Diharapkan perangkat lunak ini dapat dikembangkan lebih lanjut oleh berbagai kalangan di masyarakat luas pada umumnya dan dalam lingkup IPB khususnya.
Manfaat Penelitian
Pada penelitian ini akan dibuat sebuah perangkat lunak yang mendukung fungsi
screen sharing, sehingga diharapkan dapat menjadi alternatif yang ekonomis yang dapat menggantikan penggunaan proyektor dalam sebuah ruangan yang dilengkapi LAN (Local Area Network).
Ruang Lingkup
Berikut adalah beberapa batasan yang menjadi ruang lingkup penelitian ini, yaitu : - Digunakan bahasa pemrograman yang
open-source yaitu Java.
- Cakupan jaringan komputer yang
dipergunakan adalah LAN pada
laboratorium komputer.
- Fungsi yang dikembangkan adalah screen sharing yang diacu pada kebutuhan pengguna yang ada pada perangkat lunak NetOp School.
TINJAUAN PUSTAKA Jaringan Komputer
Jaringan komputer terdiri atas node atau
station. Node dalam jaringan komputer merupakan komputer namun dapat juga berupa perangkat komunikasi lainnya yang secara langsung bertatap muka dengan pengguna. Node yang terhubung dengan jaringan dapat berkomunikasi dengan cara tertentu. Dengan menjalankan perangkat lunak tertentu, sebuah komputer dapat menginisiasi dan mengelola interaksi pada jaringan (Feibel 1996).
Berdasarkan cakupannya, Tanenbaum
(2003) mengelompokkan jaringan komputer menjadi beberapa kategori :
1
PENDAHULUANLatar Belakang
Dalam bukunya, the encyclopedia of komputer network, Feibel (1996) menyatakan bahwa sebuah jaringan komputer terdiri atas
node atau station. Komputer-komputer tersebut dihubungkan melalui sebuah medium komunikasi fisik dengan tujuan agar dapat berbagi sumberdaya, berkomunikasi atau bertukar informasi. Jaringan komunikasi yang terbentuk, selanjutnya disebut sebagai jaringan komputer, memungkinkan pengguna untuk dapat saling berinteraksi secara efektif dan efisien dari segi sumber daya untuk mempertukarkan informasi serta layanan tambahan (Sukoco 2008).
Sejak awal ditemukan hingga saat ini, jaringan komputer memainkan peranan yang penting, terutama dalam bidang komunikasi. Namun demikian penggunaannya dalam bidang pendidikan memainkan peranan yang penting, yaitu penerapannya ke dalam laboratorium komputer untuk meningkatkan efektifitas kegiatan belajar-mengajar.
Belajar-mengajar dapat ditingkatkan melalui
kentungan yang diberikan penggunaan
jaringan komputer, yaitu kemudahan
penyampaian informasi dan kecepatan dalam
berbagi sumber daya yang mengatasi
rintangan jarak dan tempat.
NetOP School merupakan salah satu perangkat lunak edukasi yang memanfaatkan pemakaian jaringan komputer. Perangkat lunak ini dikembangkan untuk kegiatan
belajar-mengajar dalam lingkungan
laboratorium komputer. Perangkat lunak NetOP School memiliki sifat berbayar dan tidak dapat didistribusikan secara bebas. Oleh sebab itu, hanya lembaga pendidikan yang memiliki keuangan yang mencukupi yang dapat membelinya. Daftar harga NetOP School yang diambil beberapa situs web pada bulan Juni 2011 dapat dilihat pada Lampiran 1.
Salah satu fitur yang dimiliki NetOP School adalah screen sharing. Fitur ini mencakup fungsi-fungsi yang meliputi pengambilan gambar, kompresi gambar,
pengiriman gambar melalui jaringan
komputer, dan menampilkan gambar pada komputer klien. Fungsi screen sharing
diharapkan dapat digunakan sebagai pengganti proyektor pada laboratorium komputer,
sehingga dapat memberikan efek
penghematan dari sisi keuangan karena tidak perlu membeli proyektor.
Tujuan
Tujuan penelitian ini adalah membuat perangkat lunak screen sharing yang memiliki sifat yang open source serta multiplatform. Diharapkan perangkat lunak ini dapat dikembangkan lebih lanjut oleh berbagai kalangan di masyarakat luas pada umumnya dan dalam lingkup IPB khususnya.
Manfaat Penelitian
Pada penelitian ini akan dibuat sebuah perangkat lunak yang mendukung fungsi
screen sharing, sehingga diharapkan dapat menjadi alternatif yang ekonomis yang dapat menggantikan penggunaan proyektor dalam sebuah ruangan yang dilengkapi LAN (Local Area Network).
Ruang Lingkup
Berikut adalah beberapa batasan yang menjadi ruang lingkup penelitian ini, yaitu : - Digunakan bahasa pemrograman yang
open-source yaitu Java.
- Cakupan jaringan komputer yang
dipergunakan adalah LAN pada
laboratorium komputer.
- Fungsi yang dikembangkan adalah screen sharing yang diacu pada kebutuhan pengguna yang ada pada perangkat lunak NetOp School.
TINJAUAN PUSTAKA Jaringan Komputer
Jaringan komputer terdiri atas node atau
station. Node dalam jaringan komputer merupakan komputer namun dapat juga berupa perangkat komunikasi lainnya yang secara langsung bertatap muka dengan pengguna. Node yang terhubung dengan jaringan dapat berkomunikasi dengan cara tertentu. Dengan menjalankan perangkat lunak tertentu, sebuah komputer dapat menginisiasi dan mengelola interaksi pada jaringan (Feibel 1996).
Berdasarkan cakupannya, Tanenbaum
(2003) mengelompokkan jaringan komputer menjadi beberapa kategori :
2
1. LAN (Local Area Network)
Merupakan sebuah jaringan komputer yang biasanya memiliki cakupan wilayah meliputi sebuah gedung, kampus atau laboratorium. Biasanya LAN memiliki ukuran satu kilometer.
2. MAN (Metropolitan Area Network) Pada umumnya jaringan ini mencakup wilayah sebuah kota atau berukuran sekitar 10 km.
3. WAN (Wide Area Network)
Jaringan ini mencakup wilayah
geografi yang luas. WAN mencakup wilayah sebuah negara hingga sebuah benua atau berukuran 100 hingga 1000 km.
Dalam hubungan interaksinya pada
jaringan, sebuah komputer dapat bertindak sebagai sebuah server atau workstation/client. Sebuah client membuat permintaan sedangkan
server memenuhi permintaan tersebut. Server
mengatur jaringan dengan memberikan
sumber daya yang sesuai kepada client
(Tanenbaum 2003).
Berikut adalah beberapa istilah yang
dijelaskan Feibel (1996) untuk
menggambarkan hubungan antar node dalam sebuah jaringan :
1. Peer to peer
Setiap node dapat menjadi client atau
server. 2. Distributed
Sebuah jaringan yang tidak memiliki pengatur, dimana setiap node dapat berinteraksi dengan node lainnya. Dalam jaringan ini, server hanyalah sebuah node
yang menyediakan layanan namun tidak mengatur aktivitas jaringan.
3. Server based
Merupakan model jaringan dengan sebuah komputer yang didedikasikan sebagai file server, mengelola jaringan, memberikan izin akses terhadap suatu sumber daya kepada client.
4. Client/server
Merupakan versi canggih dari jaringan
server based. Client bisa mendapatkan akses ke seluruh jenis sumber daya, namun hampir keseluruhan pekerjaan dilakukan oleh client. Server menyediakan sumber
daya (misal berupa download file atau
aplikasi) dan kemudian client
menjalankannya.
Model Referensi OSI
ISO (International Standard Oraganization) mengembangkan sebuah model referensi tujuh lapis yang disebut OSI (Open Layer Sistem), ditunjukkan oleh Gambar 1, untuk menggambarkan bagaimana menyambungkan setiap kombinasi alat untuk tujuan komunikasi. Model ini mendefinisikan tugas dalam istilah tujuh lapisan fungsional dan menentukan fungsi yang harus disediakan di setiap lapisannya (Feibel 1996). Garcia dan Widjaja (2001) memberikan penjelasan lebih rinci mengenai fungsi-fungsi yang disediakan oleh ke tujuh lapisan model referensi OSI sebagai berikut :
1. Aplikasi
Merupakan lapisan yang bertanggung
jawab untuk menyediakan layanan
komunikasi terhadap aplikasi. Permisalan layanan pada lapisan aplikasi adalah
penggunaan protokol HTTP untuk
mengakses dokumen www.
Beberapa protokol yang disediakan oleh lapisan ini adalah FTP untuk pengiriman file, SMTP untuk surat elektronik, DNS untuk layanan nama, TELNET untuk akses jarak jauh, SNMP untuk pengelolaan jaringan.
2. Presentasi
Layanan yang disediakan oleh lapisan
ini adalah menjadikan data yang
direpresentasi berbeda oleh mesin yang berbeda dapat dimengerti satu sama lain.
Lapisan persentasi akan mengubah
informasi yang machine-dependent pada mesin A menjadi informasi yang machine-independent kemudian mengubah
informasi yang machine-independent
menjadi machine-dependent pada mesin B. 3. Session
Meningkatkan kehandalan pengiriman data merupakan layanan yang disediakan oleh lapisan ini. Lapisan ini memberikan layanan flow control pada pengiriman data,
session control, sychronisation point untuk pengendalian kerusakan/error.
4. Transport
Bertanggung jawab terhadap
3
entitas session pada mesin sumber terhadap sebuah entitas session pada mesin tujuan. Protokol pada lapisan transport
mencakup pengiriman PDU lapisan
transport yang disebut dengan segment. Lapisan ini bertanggung jawab terhadap proses segmentasi dan reassembly atau
blocking dan unblocking untuk
mencocokkan ukuran pesan yang
dihasilkan lapisan session terhadap ukuran paket yang dapat ditangani oleh lapisan
network.
Layanan berorientasi sambungan yang diberikan oleh lapisan ini adalah
menyediakan sebuah pengiriman
serangkaian byte atau pesan yang bebas
kesalahan. Protokol berorientasi
sambungan tersebut adalah TCP. TCP
memberikan layanan perbaikan dan
pendeteksi kesalahan, pengendalian aliran dan rangkaian.
Pada layanan yang tidak berorientasi sambungan, lapisan ini menyediakan pengiriman pesan tunggal. Dalam hal ini lapisan ini menyediakan informasi alamat sehingga pesan dapat disampaikan pada entitas lapisan session tujuan yang tepat. Protokol yang menyediakan layanan tidak berorientasi sambungan adalah UDP.
Lapisan ini juga bertanggung jawab terhadap pemutusan dan pembangunan
sambungan serta mengoptimalkan
penggunaan layanan dengan me-multiplex
sejumlah sambungan lapisan transport ke dalam sebuah sambungan lapisan network
dan men-demultiplex sebuah sambungan lapisan tranport ke sejumlah sambungan lapisan network.
5. Network
Pengiriman data dilakukan lapisan ini
dalam bentuk paket. Lapisam ini
bertanggung jawab terhadap routing paket dari mesin sumber ke tujuan. Dalam hal ini
routing berarti mencakup prosedur pemilihan jalur pengiriman paket melintasi jaringan. Layanan lain yang disediakan untuk mendukung layanan pengiriman adalah pendefinisian alamat yang dapat digunakan saat data melintasi jaringan yang berbeda.
6. Data Link
Lapisan ini menyediakan pengiriman
frame melintasi sambungan pengiriman (transmission link) yang menghubungkan
dua node. Penyisipan informasi framing
untuk mengindikasikan batasan frame, informasi pengendalian (control), informasi alamat pada header dan check bit, untuk pengendalian kesalahan dan flow control.
7. Fisik
Layanan yang disediakan oleh lapisan fisik adalah pengiriman bit melalui sambungan komunikasi medium fisik, yaitu melalui sepasang kawat tembaga, kabel coaxial, sinyal radio, atau fiber optik. Lapisan ini bertitik berat pada pemilihan dari parameter sistem seperti level tegangan, durasi sinyal, membangun dan melepaskan sambungan fisik serta aspek mekanik seperti jumlah pin dan tipe soket.
Gambar 1 Osi Layer (Garcia dan Widjaja 2001).
Model Referensi TCP/IP
Model referensi TCP/IP merupakan model referensi pendahulu yang digunakan oleh jaringan komputer yang pertama ada yaitu ARPANET dan penerusnya saat ini, internet di seluruh dunia.
Berawal dari kekhawatiran departemen pertahanan Amerika terhadap hancurnya host,
router dan internetwork gateway yang penting, model ini dirancang agar dapat bertahan jika perangkat keras subnet rusak. Dengan kata lain model ini diingikan agar sambungan tetap berjalan selama mesin sumber dan mesin tujuan dapat berjalan bahkan jika sambungan transmisi yang menghubungkan rusak.
Model referensi TCP/IP ditunjukkan oleh Gambar 2. Tanenbaum menjelaskan rincian setiap lapisan model referensi TCP/IP sebagai berikut :
4
Lapisan ini mencakup protokol tingkat yang lebih tinggi yang mencakup virtual terminal (TELNET), pengiriman file dengan FTP, surat elektronik/e-mail
dengna SMTP, layanan nama (DNS) dan lainnya.
2. Transport
Seperti halnya pada model referensi OSI, model ini juga dirancang agar entitas peer
sumber dengan tujuan yang dapat saling
berkomunikasi. Dua protokol yang
didefinisikan pada lapisan ini adalah UDP dan TCP.
3. Internet
Lapisan ini mendefinisikan sebuah
protokol dan format yang disebut dengan IP (internet protocol). Tugas dari lapisan ini adalah melakukan routing paket,
menghindari congestion paket,
mengirimkan paket ke dalam jaringan manapun dan berjalan secara bebas ke tujuan.
4. Host-to-network
Lapisan ini menjelaskan bahwa
sekumpulan protokol harus digunakan agar
host dapat terhubung ke jaringan sehingga dapat mengirim paket IP. Protokol host-to-host dan host-to-network tidak didefinisikan dan tidak bervariasi.
Gambar 2 Model referensi TCP/IP.
Protokol Jaringan
Protokol jaringan merupakan sebuah gambaran formal dari sekumpulan aturan dan konvensi yang mengatur sebuah aspek tertentu tentang bagaimana alat-alat dalam sebuah jaringan berkomunikasi. Menggunakan suatu protokol berarti memilih dan mengatur format,
timing, sequencing dan pengendalian error
sesuai dengan suatu aturan yang telah ditetapkan. Selain itu protokol juga menentukan bagaimana jaringan fisik dibuat, cara komputer terhubung ke jaringan, cara memformat data untuk pengiriman, dan bagaimana cara pengiriman datanya (Cisco Network Academy 2003).
UDP
UDP merupakan protokol lapisan
transport yang tidak handal dan
connectionless. Merupakan protokol sederhana yang menyediakan pengecekan
kesalahan dan demultiplexing. UDP
menambahkan mekanisme sehingga data dapat diberikan kepada aplikasi yang tepat pada sebuah host. Protokol ini menyediakan pengecekan keseluruhan integritas datagram UDP secara opsional. UDP menyediakan cara untuk mengirim datagram IP tanpa terlebih dahulu membuat sambungan. Seandainya datagram UDP mengalami kerusakan atau tidak terkirim maka datagram tersebut diabaikan tanpa memberikan peringatan terhadap entitas UDP pada mesin sumber (Garcia dan Widjaja 2003).
Garcia dan Widjaja (2003) menyatakan bahwa aplikasi yang menggunakan protokol UDP mencakup protokol pengiriman file
trivial, layanan nama (DNS), protokol pengelolaan jaringan (SNMP) dan protokol
real-time (RTP). Format datagram UDP ditunjukkan oleh Gambar 3.
Gambar 3 Format datagram UDP (Cisco Network Academy 2003).
TCP
Menurut Garcia dan Widjaja (2003) TCP merupakan protokol yang sering digunakan oleh sebagian besar aplikasi internet saat ini. TCP menyediakan sambungan logis full-duplex antara dua proses lapisan aplikasi melalui sebuah jaringan datagram. Tidak seperti protokol UDP, TCP menyediakan layanan yang handal melalui perulangan protokol ARQ (automatic repeat request) secara selektif, penyusunan paket dalam urutan yang benar, dan layanan byte-stream. Selain itu protokol ini juga dilengkapi dengan layanan flow control sehingga pihak pengirim tidak mengirimkan informasi lebih dari jumlah yang dapat ditangani oleh pihak penerima. Seperti halnya UDP, TCP juga mendukung terhadap pemakaian multipel aplikasi dalam
sebuah host. Format segmen TCP
diilustrasikan oleh Gambar 4.
Aplikasi
Host-to-network Transport
5
Gambar 4 Format segmen TCP (Cisco Network Academy 2003).
Pada protokol ini, sebuah pembangunan sambungan dibutuhkan sebuah kedua pihak yang berkomunikasi sebelum dapat bertukar informasi. Proses pembangunan sambungan pada TCP disebut dengan three way handshake yang diilustrasikan pada Gambar 5. Berikut adalah penjelasan rinci mengenai prosedur three way handshake:
1. Host A mengirim sebuah request
connection terhadap host B dengan mengatur bit SYN dan mengatur sequence number awal yang digunakan (Seq_no=x). 2. Host B menerima request connection
dengan mengatur bit ACK dan menandai
bit berikut yang diterima (Ack_no=x+1). Pada saat yang sama juga melakukan
request dengan mengeatur bit SYN serta
sequence number awal yang digunakan (Seq_no=y).
3. Host A membalas dengan mengatur bit
ACK dan mengkonfirmasi bit berikutnya yang akan diterima (Seq_no=y+1).
Gambar 5 Three way handshake (Garcia dan Widjaja 2003).
Java
Deitel dan Deitel (2001) mengatakan bahwa Java merupakan sebuah bahasa pemrograman berorientasi objek penuh (fully object-oriented) dimana penerapannya tidak
dipungut biaya, legal untuk didistribusikan ulang, dan open source.
Salah satu keunggulan Java adalah kaya akan kelas-kelas yang sudah yang ada pada pustaka kelas Java, sehingga programer dapat memakai kembali suatu kelas tanpa harus membuatnya terlebih dahulu. Kelas-kelas yang ada disediakan terutama oleh vendor
kompilator tetapi pustaka kelas disediakan
oleh vendor perangkat lunak yang
independent, independent software vendor.
Selain pustaka yang disediakan oleh Java, kelas-kelas pustaka juga dapat diperoleh dari internet baik sebagai shareware maupun
freeware dan menggunakan kelas tersebut berdasarkan ketentuan penggunan yang ditentukan oleh pencipta kode tersebut (Deitel dan Deitel 2001).
Keunggulan lain Java adalah
memungkinkan para programmer untuk
menulis kode tanpa harus mengetahui lingkungan perangkat keras dan sistem operasi berjalannya aplikasi yang akan dibuat (Deitel dan Deitel 2001).
JPEG
JPEG, Joint Photographic Expert Group, merupakan sebuah komite yang berada dalam
International Standard Organisation, ISO. Penyebutan JPEG lazim digunakan untuk mengacu sebuah nama standard ISO/IEC IS 10918-1 | ITU-T recommendation T.81 (JPEG Comitee 2011).
Format file JPEG digunakan secara luas pada kamera digital karena kemampuan kompresi datanya yang tinggi dalam gambar grafis berwarna, yang memungkinkan sebuah gambar beresolusi tinggi disimpan ke dalam memori kamera. Kompresi pada JPEG bersifat
loosy yang artinya informasi hilang saat kompresi. Pada kompresi yang relatif rendah (1:10 atau 10% dari ukuran gambar asli) perubahan data gambar karena data loss masih dapat diterima oleh indra penglihatan manusia, sedangkan pada rasio kompresi yang lebih tinggi (mendekati 1:100) gambar terkompresi yang dihasilkan akan benar-benar tergradasi.
JPEG memiliki kemampuan untuk
menyimpan hingga 256 warna atau delapan bit
membuat format ini secara khusus cocok untuk seluk-beluk fotografi (Henderson 2009).
Response Time
Response time adalah jumlah waktu yang dibutuhkan untuk sebuah aplikasi menanggapi
6
sebuah request dari pengguna. Untuk
pengujian kinerja, salah satu yang dilakukan adalah mengukur waktu respon sistem yang merupakan selisih waktu antara pengguna meminta tanggapan dari aplikasi dan jawaban lengkap tiba di workstation pengguna (Molyneaux 2009).
Bandwidth
Bandwidth mengacu pada jumlah data yang dapat dibawa oleh suatu saluran komunikasi. Diukur dengan satuan bit per detik (bit persecond/bps) pada sinyal digital dan hertz/Hz pada sinyal radio (Feibel 1996).
Frame Rate
Video atau film merupakan sebuah kumpulan gambar, dimana gambar yang ditampilkan setiap suatu waktu berbeda dengan gambar yang ditampilkan pada waktu
sebelumnya. Rangkaian gambar yang
ditampilkan secara cepat kepada pengamat, akan tampak menjadi gambar yang bergerak dalam penglihatan pengamat. Satuan frame
dalam setiap detik disebut sebagai fps atau
frame per second (Simpson 2008).
Open Source
Merupakan hal yang umum bagi
programmer untuk berbagi dan mengembangkan penggunaan program dimana biasanya kode sumber program didistribusikan secara bebas. Dengan keuntungan berbagi tersebut, khalayak umum dapat dengan mudah menciptakan dan mendistribusikan perangkat lunak versi terbaru dengan kualitas yang lebih baik (Henderson 2009).
Henderson (2009) mengacu pada Stallman dan pendukung pergerakan open source
lainnya bahwa perangkat lunak tidak harus gratis namun begitu pengguna butuh untuk menerima kode sumber secara lengkap.
Pengguna juga bebas mengubah atau
meningkatkan untuk menciptakan dan
mendistribusikan versi aplikasi baru program dengan mengikuti mekanisme legal Stallman yang disebut copyleft.
Umumnya perangkat lunak yang open source memiliki lisensi General Public Liscense atau disingkat dengan GPL. Versi terbaru dari GPL adalah GPL3.
Strategi Layanan pada Arsitektur Client-Server
Server merupakan sebuah komputer yang memberikan layanan sumber daya kepada
workstation/client yang melakukan request.
Pada umumnya, server dibutuhkan untuk menangani banyak client dalam suatu waktu.
Banyaknya request yang terjadi secara bersamaan menimbulkan perlunya sebuah strategi penanganan khusus terhadap client, sehingga sumber daya pada server tidak dimonopoli oleh sebuah client dan seluruh
client dapat dilayani tanpa adanya delay yang berarti ataupun ketidaktersediaan layanan
server. Davis et al. (2007) memberikan beberapa strategi yang dapat digunakan untuk menangani banyak client, yaitu :
1. Multiplexing
Merupakan suatu cara menangani banyak sambungan client pada proses
server. Aplikasi memungkinkan client
terhubung ke server dan
menambahkannya ke dalam sebuah watch list. Watch list merupakan sebuah array
dari socket descriptor. Selanjutnya sistem operasi memberitahu aplikasi, client mana, yang berada dalam watch list, yang akan mendapat layanan. Pada multiplexing
client akan dilayani menggunakan metode
time slicing, yaitu sebuah sambungan
client akan dilayani hingga waktu gilirannya berkhir. Jika pada waktu gilirannya sebuah client tidak memiliki tugas untuk proses server maka pelayanan akan dialihkan kepada sambungan client
lainnya atau proses server akan menunggu hingga waktu giliran client tersebut berakhir.
Analogi dari multiplexing adalah seperti restoran dengan seorang pelayan
yang bertanggung jawab melayani
pelanggan, dimana pelayan tersebut memiliki sebuah daftar pelanggan yang akan dilayani. Layanan hanya dilakukan terhadap seorang pelanggan dalam suatu waktu. Gambar 6 menunjukkan sebuah
aplikasi server dengan strategi
multiplexing.
Gambar 6 Aplikasi server dengan
Multiplexing.
2. Forking
Dalam lingkungan UNIX, fork
merupakan sebuah cara tradisional untuk
Proses
server
client client client
7
menangani banyak client. Kembalian yang dilakukan sistem call fork() adalah sebuah ID proses (PID) dari child process yang dihasilkan oleh pemanggilan fork(). Saat fork() dipanggil, sebuah duplikat dari proses pemanggil akan dibuat. Seluruh properti dari proses induk (parent process) akan digandakan, yaitu mencakup stack, ruang data, dan seluruh descriptor yang terbuka, kecuali PID proses pemanggil. Sebuah aplikasi server dengan strategi