BAB 2 LANDAS AN TEORI
2.1
Jaringan (Network) M enurut Bradley M itchell (About.com), jaringan adalah kegiatan menghubungkan dua atau lebih perangkat komputer dengan tujuan membagi data. Jaringan dibangun dengan menggabungkan perangkat keras dan perangkat lunak komputer. Computer network atau jaringan komputer, dapat diartikan sebagai dua atau lebih komputer beserta perangkat – perangkat lain yang dihubungkan dengan tujuan untuk dapat saling berkomunikasi dan bertukar informasi antar komputer yang satu dengan satu atau lebih komputer yang lain, sehingga membantu menciptakan efisiensi dan optimalisasi dalam kerja. Adapun menurut Bob M etcalfe, penemu Ethernet, derajat kekuatan dari jaringan komputer dapat meningkat secara eksponensial seiring dengan penambahan jumlah komputer yang dihubungkan kepadanya. Dan setiap komputer yang dihubungkan ke suatu jaringan dapat menggunakan jaringan tersebut sebagai suatu sumber daya (resource) sekaligus turut menambah derajat kekuatan sumber daya yang tersedia dalam jaringan tersebut baik dari segi nilai maupun keragamannya. Dengan demikian apa yang disumbangkan suatu komputer ketika dihubungkan kedalam suatu jaringan sesungguhnya berupa sumber daya ( resource ) yang dimilikinya. Resource ini sendiri bermacam-macam, dapat berupa kemampuan memproses, media penyimpanan, informasi, maupun berbagai perangkat pendukung lain seperti printer dan scanner. 7
8 Beberapa layanan yang umum dimanfaatkan melalui sebuah jaringan komputer diantaranya adalah :
a.
File S haring M enurut Bradley M itchell (About.com), file sharing pada jaringan adalah
proses menyalin data dari satu komputer ke yang lain dengan menggunakan sebuah koneksi jaringan secara langsung. File sharing atau berbagi pakai file secara bersama – sama merupakan kegiatan yang paling umum dilakukan dalam suatu jaringan komputer. Tanpa adanya jaringan komputer, setiap orang yang ingin membagi pakai atau memindahkan file dari harddisk suatu komputer ke komputer lainnya harus terlebih dahulu menyalin file tersebut ke dalam media penyimpanan portable seperti flash disk (FD) atau compact disk (CD), lalu membawa atau mengantarkan FD / CD berisi file tersebut ke komputer tujuan, dan menyalinnya ke komputer tersebut. Dengan adanya jaringan komputer, maka pemindahan file dari satu komputer ke komputer lainnya, dapat dilakukan lebih mudah dimana user tidak harus memiliki akses fisik secara langsung terhadap sumber file jika ingin menyalin file dari suatu komputer tertentu karena kedua komputer saling terhubung dan dapat mengakses media penyimpanan masing – masing.
b.
Printer S haring Seperti halnya file sharing, printer sharing memungkinan seluruh user
dalam jaringan menggunakan dan mengakses satu atau beberapa printer secara bergantian. Printer sharing melalui jaringan memenuhi kebutuhan seluruh user
9 terhadap printer tanpa harus memasang sebuah printer pada masing – masing komputer, atau memindahkan printer dari satu komputer ke komputer lain. Dengan printer sharing, setiap user dapat merasa seolah – olah komputernya terhubung secara fisik dengan printer yang digunakan, padahal sesungguhnya printer tersebut terhubung ke salah satu komputer lain dalam jaringan atau bahkan sebenarnya terhubung ke sebuah perangkat printer server box sehingga dapat menghemat waktu, tenaga, dan biaya bagi user yang ingin mencetak suatu data atau dokumen tertentu melalui printer. Adapun untuk mengatur giliran pelaksanaan tugas mencetak itu sendiri, mengingat printer tersebut digunakan oleh banyak user, umumnya digunakan printer spooler.
c.
Internet Access Sharing Internet merupakan salah satu sarana untuk mendapatkan sumber
informasi yang penting bagi kegiatan suatu perusahaan. Dengan internet, perusahaan dapat melakukan transaksi secara online, menghubungi pelanggan dengan cepat dan mudah, serta menyediakan informasi mengenai perusahaan tersebut yang dapat diakses dengan mudah oleh setiap orang. Perusahaan juga dapat membagi akses internet kepada para pegawainya sehingga koneksi yang ada dipakai secara bersama-sama. Hal tersebut dapat dilakukan dengan menggunakan layanan Internet Access Sharing. Tanpa adanya layanan ini, setiap user yang membutuhkan akses internet harus diberikan saluran koneksi sendiri – sendiri sehingga biaya yang diperlukan menjadi sangat tinggi. Namun adapun kelemahan dari layanan Internet Access Sharing ini adalah keterbatasan bandwidth yang akan didapat oleh setiap user. Karena koneksi yang tersedia
10 dipakai secara bersama – sama, maka bandwith yang tersedia akan dibagi – bagi kepada para user yang menggunakan internet, sehingga kecepatan akses setiap user akan menjadi tidak maksimal. Demikian 3 layanan yang umum diterapkan melalui jaringan komputer. Adapun di dalam jaringan komputer itu sendiri, sebenarnya memiliki fungsi dan cara
penerapan
yang berbeda-beda,
sehingga
dapat
dibagi-bagi
atau
dispesifikasikan berdasarkan beberapa kriteria. Yang pertama, berdasarkan tipe transmisinya ( Tanenbaun 2003, p. 15 ), network / jaringan dapat dibagi menjadi 2 bagian besar yaitu : broadcast dan point to point. Dalam broadcast network, komunikasi terjadi dalam sebuah saluran komunikasi yang digunakan secara bersama – sama, dimana data berupa paket yang dikirimkan dari sebuah komputer akan disampaikan ke setiap komputer yang ada dalam jaringan tersebut. Kemudian setiap komputer akan mengecek apakah data tersebut ditujukan untuk dirinya berdasarkan data alamat yang ada dalam paket tersebut. Paket data hanya akan diproses oleh komputer tujuan dan akan dibuang oleh komputer yang bukan tujuan paket tersebut. Sedangkan pada point to point network, komunikasi data terjadi melalui beberapa koneksi antara sepasang komputer, sehingga untuk mencapai tujuannya sebuah paket mungkin saja harus melalui beberapa komputer terlebih dahulu. Oleh karena itu, dalam tipe jaringan ini, pemilihan rute yang baik akan menentukan kualitas koneksi data yang berlangsung. Yang kedua, berdasarkan luas jangkauan suatu jaringan, maka jaringan dapat dibagi tiga ( Tanenbaun 2003 , p. 14 ), yaitu : Local Area Network (LAN), Metropolitan Area Network ( MAN ), dan Wide Area Network ( WAN )
11
a.
Local Area Network (LAN) M enurut Juergen Haas (About.com), Local Area Network (LAN) adalah
sebuah jaringan komputer yang daerah jangkauannya relatif kecil. M enurut Bradley M itchell (About.com), LAN memiliki kemampuan untuk memberikan jaringan kepada grup dari komputer yang jaraknya dekat satu sama lain seperti gedung kantor, sekolah, atau rumah. Sebuah LAN berguna untuk berbagi sumber seperti data, printer, permainan, atau aplikasi lainnya. Banyak LAN dibangun dengan hardware yang relatif murah, seperti kabel ethernet, network adapters, dan hub. Dengan jangkauannya yang kecil membuat kecepatan proses transmisi datanya tinggi dan tingkat kesalahannya lebih kecil, dan sebuah LAN bisa terkoneksi dengan LAN lain secara jarak jauh melalui media, seperti jalur telepon atau gelombang radio. Biasanya LAN menghubungkan beberapa workstation, printer, dan beberapa device yang lain. LAN memberikan beberapa keuntungan kepada penggunanya, diantaranya pembagian hak akses device dan aplikasinya, pertukaran file antar engguna, dan komunikasi antar pengguna. Suatu Local Area Network dirancang untuk : a.
Beroperasi pada wilayah geografis yang terbatas.
b.
M emperbolehkan beberapa user untuk mengakses high-bandwith media.
c.
M enyediakan koneksi pada service lokal secara full-time.
d.
M enghubungkan device – device yang berdekatan secara fisik.
12 b.
Metropolitan Area Network (MAN) Metropolitan Area Network adalah sebuah jaringan data yang didesain
untuk sebuah kota (Castelli, 2004). M AN memiliki jangkauan jaringan lebih luas daripada LAN, dan biasanya terdiri dari dua atau lebih LAN dalam area geografis yang sama. Ruang lingkup MAN dapat mencakup perusahaan dengan kantor – kantor cabangnya di satu kota dan dapat berupa jaringan private atau public. Sebuah MAN bisa dibangun sebagai service provider dan disewakan antara banyak pelanggan atau sebuah perusahaan bisa membangun private MAN sendiri. Dalam kaitan geografis MAN memang lebih besar daripada LAN, tetapi lebih kecil daripada WAN. Karakteristik MAN biasanya konektivitas dengan kecepatan tinggi menggunakan kabel fiber-optic atau media digital lainnya dan sering digunakan perusahaan – perusahaan dengan beberapa kantor yang terletak dalam kota yang sama. Sebuah perusahaan dapat memperluas layanan LAN pada setiap bangunan melewati area metropolitan dengan menggunakan MAN untuk menghubungkan setiap kantor. M enurut javvin.com, MAN mengadopsi teknologi dari LAN dan WAN untuk melayani tujuan-nya. Beberapa warisan teknologi yang digunakan untuk MAN adalah ATM , FDDI, DQDB dan SM DS. Pada masa ini Gigabit Ethernet dan 10 Gigabit Ethernet mulai menggantikan teknologi lama ini. Pada tingkat fisikal, hubungan antara MAN dan LAN telah dibangun pada kabel fiber optik atau menggunakan teknologi nirkabel seperti microwave atau radio. Protokol Metropolitan Area Network (MAN) sebagian besar ada pada tingkat data link (layer 2 dalam OSI model), yang ditetapkan oleh IEEE, ITU-T, dan lain – lainnya.
13
c.
Wide Area Network (WAN) M enurut Nadeem Unuth (About.com), Wide Area Network (WAN) adalah
jaringan komputer yang mencakup wilayah yang lebih luas daripada LAN. WAN menjangkau kota, negara, benua dan seluruh dunia. WAN terbentuk oleh koneksi LAN secara bersama-sama. Sebagai contoh beberapa LAN utama dalam suatu kota dapat terhubung secara bersama-sama membentuk WAN. Suatu Wide Area Network adalah suatu jaringan komputer yang luas yang mencakup wilayah yang besar, seperti area yang melintasi beberapa negara (Castelli, 2004). Biasanya merupakan LAN yang saling terhubung yang menyediakan akses ke komputer atau server di lokasi yang lain. Komputer – komputer yang terhubung dengan sebuah WAN biasanya dihubungkan melalui jaringan publik, seperti sistem telepon. Komputer-komputer juga dapat dihubungkan melalui leased lines atau satelit, juga dari sebuah network service provider. WAN menyediakan aktivitas full-time dan part-time, akses melalui antarmuka serial dengan kecepatan rendah, kemampuan komunikasi yang realtime kepada user, sumber daya remote terhubung ke layanan lokal secara fulltime, layanan email, World Wide Web, pemindahan file, serta e-commerce, dan menghubungkan peralatan yang berjauhan yang dipisahkan dengan jarak yang luas bahkan area global. Sebagai contoh aplikasi WAN adalah sebuah komputer yang mengakses komputer ditempat lain dalam jarak jauh, dengan menggunakan modem dial-up, sirkuit frame relay, sirkuit ATM , sirkuit ISDN, atau lease line 56 K. Frame relay
14 menjadi protokol aplikasi WAN yang paling ekonomis untuk transfer data dengan jarak jauh.
2.2
S ocial Web Social web adalah sebuah tempat online dimana orang-orang yang memiliki selera umum dapat berkumpul untuk berbagi pikiran, komentar dan pendapat. Social Web termasuk jaringan sosial seperti MySpace, Gather, Friendster, Facebook, BlackPlanet, Eons, Linkedin, dan lain-lain. Social Web juga termasuk merek web tujuan seperti Amazon, Netflix, dan eBay. Social Web termasuk situs perusahaan seperti IBM , Circuit City, Cisco, dan Oracle. Social Web adalah sebuah dunia baru dari media yang belum dibayar yang dibuat oleh individual atau perusahaan di web. Strategi baru ini, memiliki kemampuan untuk mengubah opini publik setiap jam-jika tidak setiap menit, termasuk diantaranya : • Reputasi aggregators adalah mesin pencari seperti Google, Yahoo, Ask, dan Microsoft New Live. Situs-situs ini merupakan situs Agregat dengan produk atau layanan yang terbaik untuk ditawarkan dan biasanya diletakkan di urutan hal reputasi. • Blog (kontraksi sebuah web log) adalah jurnal online di mana orang-orang dapat memberikan ide, gambar, dan alamat web ke halaman web atau situs. • E-communities pada umumnya didukung dengan iklan meskipun beberapa diantaranya gratis. M ereka fokus pada media profesional seperti majalah perdagangan. Contohnya termasuk BusinessWeek.com, SmartMoney.com, dan FastCompany.com. Dan yang kurang dikenal masyarakat seperti eMediaPost.com, ASJA.org, dan allrecipes.com.
15 • Jaringan sosial adalah tempat di mana orang-orang dengan selera atau perhatian umum berkumpul untuk bertemu dengan orang-orang dengan minat yang sama dan saling mengekspresikan diri. Contoh yang telah dikutip, antara lain iVillage, Xanga, StumbleUpon, MedNetwork, dan Flickr. ( Larry Weber 2007, p.4 )
2.3
Server Server adalah sebuah komputer yang berisi program, baik sistem operasi maupun program aplikasi yang menyediakan pelayanan kepada komputer lain yang sama atau berbeda ( ilkom.unsri.ac.id ). Jenis-Jenis Server : 1. Disk Server •
Digunakan untuk menyediakan fasilitas pengaksesan ke harddisk.
•
File dan program yang tersimpan dalam harddisk dapat diakses oleh setiap user seolah-olah file dan program tersebut berada dalam harddisk sendiri.
2. File Server •
M enyediakan pelayanan yang mirip dengan disk server tetapi juga mengelola disk lokal setiap komputer.
3. Printer Server •
M enyediakan pelayanan untuk pemakaian bersama satu atau beberapa printer dalam suatu jaringan komputer.
16 4. Terminal Server •
M emungkinkan sejumlah komputer kecil atau terminal-terminal lain untuk mengakses ke sebuah titik LAN yang sama.
2.4
Web S erver
Web Server adalah sebuah perangkat lunak server yang berfungsi menerima permintaan HTTP atau HTTPS dari klien yang dikenal dengan browser web dan mengirimkan kembali hasilnya dalam bentuk halaman-halaman web yang umumnya berbentuk dokumen HTM L. Web Server yang terkenal diantaranya adalah Apache dan Microsoft Internet Information Service (IIS). Apache merupakan web server antar platform, sedangkan IIS hanya dapat beroperasi di sistem operasi Windows. (http://id.wikipedia.org/wiki/Server_web)
Web server sering dioperasikan sebagai bagian dari paket yang lebih besar dari program – program yang berhubungan dengan internet dan intranet untuk melayani e-mail, mengunduh permintaan dari File Transfer Protocol ( FTP ) data, dan membangun dan mempublikasikan halaman web. Pertimbangan dalam memilih web server meliputi seberapa baik kerja dengan sistem operasi dan server lain, dan kemampuan untuk menangani sisi server program, keamanan, dan penerbitan, mesin pencari, peralatan membangun situs yang mungkin datang dengannya. (http://whatis.techtarget.com)
17 2.4.1
Apache Web S erver Apache Web Server adalah salah satu aplikasi web server yang sering
digunakan untuk menangani halaman web yang berbasis HTM L, PHP, XM L, dan sebagainya. Apache merupakan web server dengan lisensi open source yang berarti penggunaannya dapat dipakai dengan luas dan pengembangannya dapat dilakukan oleh semua orang. Apache pertama kali dikembangkan oleh NCSA (National Center for Supercomputing Application), University of Illinois. (http://apache.org).
Apache menawarkan beberapa karakteristik berikut:
2.5
•
Handal dan fleksibel serta memenuhi standar HTTP/1.1,
•
Dapat dikonfigurasi dan diperluas dengan modul third party,
•
Dapat diubah melalui Apache Application Program Interface (API),
•
Pada web server Apache disediakan source code yang bersifat open source,
•
Dapat dijalankan pada Sistem Operasi yang berbeda (multiplatform).
Clustering Clustering adalah koneksi dua komputer atau lebih secara bersamaan yang bertujuan untuk saling berbagi sumber daya dan permintaan data. M asingmasing anggota dari kelompok clustering disebut dengan node. Node yang terdapat di dalam suatu cluster bisa merupakan salah satu dari device penyimpanan, atau device yang dibagi (share) penggunaanya. Clustering
18 merupakan perangkat yang mendukung load balancing, fault tolerance, dan failover.
Gambar 2.1 Clustering (Sumber : http://www.smartdraw.com)
2.5.1
Konsep Cluster Konsep
cluster
melibatkan
dua
atau
lebih
komputer
dengan
mengorganisirnya untuk bekerja sama menyediakan ketersediaan, kehandalan dan skalabilitas yang lebih tinggi dari yang diperoleh dengan menggunakan sistem tunggal. Bila terjadi kegagalan dalam cluster, sumber daya dapat dialihkan dan beban kerja dapat didistribusikan kembali. Biasanya end user mengalami sedikit kegagalan, dan mungkin hanya perlu melakukan refresh ulang browser
atau
kembali
ke
(http://technet.microsoft.com)
aplikasi
untuk
mulai
bekerja
kembali.
19 2.5.2
Batasan dan Keuntungan Cluster Sebuah server cluster memiliki tingkat ketersediaan yang tinggi dengan membuat aplikasi perangkat lunak dan data yang tersedia di beberapa server terhubung bersama-sama dalam sebuah konfigurasi cluster. Jika satu server berhenti berfungsi, sebuah proses yang bernama failover secara otomatis akan memindahkan beban kerja dari server yang gagal ke server yang lain dalam cluster.
Proses failover dirancang untuk memastikan ketersediaan data dan
aplikasi-aplikasi yang penting. Sementara cluster yang dirancang untuk dapat menangani kegagalan, tidak memiliki toleransi untuk kesalahan yang berkaitan dengan data pengguna. Cluster dengan sendirinya tidak menjaga terhadap hilangnya pekerjaan pengguna. Biasanya, pemulihan kehilangan pekerjaan ditangani oleh perangkat lunak aplikasi, dimana perangkat lunak aplikasi ini harus dirancang untuk memulihkan pekerjaan pengguna, atau harus dirancang sedemikian rupa agar semua pengguna dapat menghindari terjadinya kegagalan atau failover.
2.5.3
Pemecahan Tiga Masalah Khas Cluster dapat digunakan untuk memecahkan masalah dalam tiga khas lingkungan pusat data :
•
Kebutuhan akan Ketersediaan yang Tinggi Ketersediaan yang tinggi mengarah pada kemampuan untuk menyediakan
akses ke layanan dengan persentase tingkat jadwal waktu yang tinggi kepada end-user bersamaan dengan dilakukannya upaya untuk mengurangi penuaan
20 yang tidak terjadwalkan. Solusi dapat tersedia apabila sesuai dengan tujuan uptime organisasi terjadwal. Ketersediaan tujuan itu sendiri diperoleh dengan mengurangi downtime yang tidak direncanakan dan kemudian bekerja untuk mengembangkan jumlah total waktu operasi service.
•
Kebutuhan akan Keandalan yang Tinggi Kehandalan yang tinggi mengarah kepada kemampuan untuk mengurangi
frekuensi kegagalan sistem, ketika mencoba untuk memberikan toleransi kesalahan jika terjadi kegagalan. Sebuah solusi menjadi sangat handal apabila solusi tersebut mampu memperkecil satu poin kegagalan dan mengurangi resiko kegagalan satu komponen / sistem akan berpengaruh terhadap pekerjaan dari seluruh layanan yang ditawarkan. Tujuan reabilitas dapat dicapai dengan menggunakan redudansi, toleran terhadap kesalahan komponen perangkat keras, perangkat lunak aplikasi dan sistem.
•
Kebutuhan akan S kalabilitas yang Tinggi Skalabilitas yang tinggi mengarah kepada kemampuan untuk menambah
sumber daya dan komputer dalam upaya untuk meningkatkan kinerja. Sebuah solusi sangat scalable jika dapat diskalakan ke atas dan keluar. M asing-masing sistem menawarkan layanan yang dapat diskalakan dengan menambahkan lebih banyak sumber daya (misalnya, CPU, memori, disk, dll) dan komputer.
21
2.6 Server Cluster Server cluster digunakan untuk menyediakan dukungan terhadap failover pada aplikasi dan layanan. Sebuah server cluster dapat terdiri dari delapan node lebih. Setiap node terpasang untuk satu atau lebih cluster perangkat penyimpanan data. Cluster perangkat penyimpanan membolehkan server yang berbeda untuk berbagi data yang sama, dan dengan membaca data ini menyediakan failover untuk sumber daya. Teknik yang dipilih untuk menghubungkan perangkat penyimpanan adalah saluran fiber. Bila menggunakan tiga atau lebih node, saluran fiber adalah satu-satunya teknik yang harus digunakan. Namun, apabila menggunakan 2-node clustering dengan Advanced Server, SCSI atau saluran fiber dapat digunakan untuk memberikan sambungan ke perangkat penyimpanan data.
2.6.1
Konfigurasi Server Cluster Server cluster dapat diatur dengan menggunakan berbagai konfigurasi. Server dapat berupa aktif atau pasif, dan berbagai server dapat dikonfigurasi untuk mengambil alih sumber daya yang gagal dari server lainnya. Failover dapat berlangsung beberapa menit, tergantung pada konfigurasi dan aplikasi yang digunakan, dan failover sendiri dirancang untuk menjadi transparan kepada end-user.
22
2.6.2
Server Cluster dan Failover Sebuah node aktif dapat membuat sumber-sumber daya yang ada menjadi tersedia. Klien mengakses sumber daya melalui dedicated server virtual. Server cluster menggunakan konsep server virtual untuk menentukan kelompok sumber daya yang sama -sama mengalami failover. Ketika server gagal, kelompok dari sumber daya tersebut dikonfigurasi pada server yang mengalami gagal cluster ke server lainnya. Server yang menangani failover harus dikonfigurasi untuk menampung kapasitas tambahan yang diperlukan untuk menangani tambahan kerja. Bila server yang gagal tersebut online kembali, server cluster dapat dikonfigurasi untuk membolehkan failback ke server yang asli, atau untuk membolehkan server untuk saat ini terus memproses permintaan.
Gambar 2.2 Multi-node cluster dengan semua node aktif
23
Gambar 2.2 di atas menunjukkan konfigurasi pada semua node dalam database cluster yang aktif dan setiap node yang memiliki sumber daya grup yang terpisah. Berdasarkan partitioned view dari database, masing-masing kelompok sumber daya tersebut dapat menangani berbagai jenis permintaan. Penanganan jenis permintaan dapat didasarkan pada satu atau lebih faktor, seperti nama account atau lokasi geografis. Dalam hal kegagalan, setiap node dikonfigurasi menjadi failover ke node berikutnya pada gilirannya.
2.7 Load Balancing M enurut total.or.id, Load Balancing adalah sebuah konsep yang memiliki fungsi untuk menyeimbangkan beban atau muatan pada infrastruktur TI sebuah perusahaan, agar seluruh departemen dapat dimanfaatkan secara maksimal dan optimal.
2.7.1
Network Load Balancing Network Load Balancing (NLB) menyediakan dukungan failover untuk aplikasi berbasis IP dan layanan yang membutuhkan skalabilitas dan ketersediaan yang tinggi. NLB memungkinkan staf TI untuk skala-out secara bertahap hingga 32 server sebagai penanganan terhadap permintaan yang meningkat. NLB merupakan ide yang cocok untuk meningkatkan ketersediaan web server, media server, terminal server dan situs e-commerce. Layanan Load balancing ini menjamin tidak ada satu titik kegagalan dan tidak ada hambatan
24 kinerja. Banyak dari konsep-konsep server cluster yang berlaku, juga berlaku untuk NLB. NLB node bekerja sama untuk memberikan ketersediaan kritis IP berbasis sumber daya, yang dapat mencakup: TCP, UDP dan GRE traffic request. (http://technet.microsoft.com)
2.7.2
Failover dan Failback Menggunakan Virtual IP Address Seperti yang ditunjukkan pada Gambar 2.3 di bawah ini, NLB menggunakan virtual IP address. Permintaan klien akan diarahkan ke virtual IP address yang memungkinkan terjadinya transparan failover dan failback. Ketika terjadi kegagalan penyeimbangan beban sumber daya pada salah satu server, sisa server yang ada dalam grup akan mengambil alih kerja dari server yang gagal tersebut. Ketika server yang gagal online kembali, server dapat secara otomatis bergabung kembali dengan grup cluster dan NLB mulai mendistribusikan beban secara otomatis ke server. Failover memakan waktu kurang dari 10 detik pada kebanyakan kasus.
Gambar 2.3 Gambaran Network load balancing
25
2.8
Network File S ystem (NFS )
Network File System atau sistem berkas jaringan adalah sekumpulan protokol yang digunakan untuk mengakses beberapa sistem berkas melalui jaringan. Bisa dikatakan juga bahwa NFS merupakan sebuah implementasi dan spesifikasi dari sebuah perangkat lunak untuk mengakses remote file melalui jaringan LAN atau WAN.
Network
File System
(NFS) merupakan
sebuah
protokol yang
dikembangkan oleh Sun Microsystem pada tahun 1984 dan NFS didefinisikan dalam RFC 1094, 1813 dan 3530 sebagai “DFS” yang mengijikan sebuah komputer untuk mengakses file melalui network serasa akses file di disk local. NFS merupakan protokol yang sangat mendukung dalam pengaplikasian suatu file system yang terdistribusi.
Tujuan dari NFS adalah untuk memungkinkan terjadinya pertukaran sistem berkas secara transparan antara mesin-mesin bebas tersebut. Hubungan yang terjadi di sini didasarkan pada hubungan client-server yang menggunakan perangkat lunak NFS server dan NFS client yang berjalan diatas workstation.
Gambar 2.4 berikut ini menggambarkan tiga buah mesin bebas yang memiliki sistem berkas lokal masing-masing yang bebas juga.
26
Gambar 2.4 Three Independent File S ystem (Sumber : http://bebas.vlsm.org)
NFS mendefinisikan metode berbagi file dengan membuat file yang berada pada satu atau lebih remote server menjadi dapat diakses pada sistem lokal klien dengan cara yang membuat file tersebut muncul sebagai file lokal dalam direktori.
Gambar 2.5 Implementasi NFS (Sumber : http://linuxcourse.rutgers.edu)
27 2.8.1
Cara Kerja NFS NFS didesain agar dapat beroperasi di lingkungan ataupun jaringan yang
heterogen yang meliputi mesin, platform, sistem operasi, dan arsitektur jaringan. Ketidaktergantungan ini didapat dari penggunaan RPC primitif yang dibangun diatas protokol External Data Representation (XDR). Jika misalnya terjadi sebuah pertukaran sistem berkas antara server dan client , maka pertukaran sistem berkas yang terjadi disini harus dipastikan hanya berpengaruh pada tingkat client dan tidak mempengaruhi sisi server , karena server dan client adalah mesin yang berbeda dan sama-sama bebas. Untuk itu, mesin client harus melakukan operasi mount terlebih dahulu agar remote directory dapat diakses secara transparan. (http://blog4d1.blogspot.com)
2.8.1.1 Mount NFS
Mounting adalah memasukkan sistem berkas ke struktur direktori utama, baik ke dalam direktori kosong maupun ke dalam direktori yang sudah berisi. Isi dari direktori itu tidak bisa diakses hanya kalau dimasukkan ke direktori yang berisi. Selama sistem berkas masih dimount, isi yang akan terlihat saat membuka direktori itu adalah isi dari sistem berkas. Ketika sistem berkas telah diunmount , barulah isi sesungguhnya dari direktori itu dapat terlihat.
Protokol mount membangun hubungan yang logis antara client dan server. Informasi penting yang didapat saat operasi mount dilakukan adalah nama dari direktori dan nama dari server yang menyimpan direktori tersebut. Hal ini menyebabkan client harus melakukan operasi mount pada server dan direktori
28 yang tepat. Ketika client melakukan operasi mount ke sebuah server, maka server akan mengirimkan sebuah file handle kepada client. File handle ini berfungsi sebagai kunci bagi client untuk melakukan pengaksesan lebih lanjut terhadap direktori yang telah dimount tadi.
Gambar 2.6 Protokol Mount (Sumber : http://lintoherlambang.com)
2.8.2
Protokol NFS
NFS umumnya menggunakan protokol Remote Procedure Call (RPC) yang berjalan di atas UDP dan membuka port UDP dengan port number 2049 untuk komunikasi antara client dan server di dalam jaringan. Client NFS selanjutnya akan mengimpor sistem berkas remote dari server NFS, sementara server NFS mengekspor sistem berkas lokal kepada client. M esin-mesin yang menjalankan perangkat lunak NFS client dapat saling berhubungan dengan
29 perangkat lunak NFS server untuk melakukan perintah operasi tertentu dengan menggunakan request RPC. Adapun operasi-operasi yang didukung oleh NFS adalah sebagai berikut:
a.
M encari berkas di dalam direktori.
b.
M embaca kumpulan direktori.
c.
M emanipulasi link dan direktori.
d.
M engakses atribut berkas.
e.
M embaca dan menulis berkas.
Gambar 2.7 Protokol NFS (sumber : http://lintoherlambang.com/)
Perlu diketahui bahwa server NFS bersifat stateless , yang artinya setiap request harus mengandung argumen yang penuh dan jelas sebab server NFS tidak menyimpan sejarah informasi request . Data yang dimodifikasi harus di commit ke server sebelum hasilnya di kembalikan ke client . NFS protokol tidak menyediakan mekanisme concurrency-control.
30 Beberapa manfaat NFS : •
Lokal workstations menggunakan ruang disk yang lebih kecil,
•
Pemakai tidak harus membagi direktori home pada setiap mesin di jaringan,
•
Direktori home dapat di set-up pada NFS server dan tersedia melalui jaringan,
•
Device penyimpanan seperti floppy disk, CDROM drives, dan lain-lain dapat digunakan oleh mesin lainnya.
2.9
Linux Linux atau GNU/Linux (GNU) merupakan sebuah istilah yang digunakan sebagai rujukan kepada keseluruhan distro Linux (Linux Distribution), yang didalamnya selalu disertakan program – program lain yang mendukung sistem operasi ini (http://id.wikipedia.org/wiki/Linux). Contoh program - program tersebut adalah web server, bahasa pemrograman, database, tampilan desktop (Desktop enviroment) (seperti GNOM E dan KDE), dan aplikasi atau software perkantoran (office suite) seperti OpenOffice.org, KOffice, Abiword, Gnumeric, dan lainnya. Distro Linux telah mengalami pertumbuhan yang pesat dari segi popularitas, sehingga lebih popular dari versi UNIX yang menganut sistem lisensi dan berbayar maupun versi UNIX bebas lainnya yang pada awalnya menandingi dominasi M icrosoft Windows dalam beberapa sisi. Linux mendukung banyak perangkat keras komputer, dan telah
31 digunakan di dalam berbagai peralatan komputer pribadi, super komputer dan Embedded System (seperti telepon selular dan perekam video pribadi Tivo). Pada mulanya, Linux dibuat, dikembangkan dan digunakan oleh peminatnya saja. Kini Linux telah mendapat dukungan dari perusahaan besar seperti IBM, Hewlett-Packard dan perusahaan besar lainnya. Para pengamat teknologi informatika beranggapan kesuksesan ini dikarenakan Linux tidak tergantung kepada vendor (vendor independence), biaya operasional yang rendah, dan kompatibilitas yang tinggi dibandingkan versi UNIX berbayar, serta faktor keamanan serta kestabilannya dibandingkan dengan Microsoft Windows. Ciri-ciri ini juga menjadi bukti atas keunggulan model pengembangan perangkat lunak sumber terbuka opensource software. Kernel Linux pada mulanya ditulis sebagai proyek hobi oleh pelajar universitas Finland Linux Torvalds yang belajar di universitas Helsinki, untuk membuat kernel Minix yang gratis dan dapat diubah. (Minix adalah proyek pelajaran menyerupai UNIX dibuat untuk mudah digunakan dan bukannya untuk digunakan secara komersial). Sejarah sistem operasi Linux berkaitan erat dengan proyek GNU, proyek program bebas freeware terkenal diketuai oleh Richard Stallman. Proyek GNU diawali pada tahun 1983 untuk membuat sistem operasi seperti UNIX lengkap – compiler, utility aplikasi, utility pembuatan dan seterusnya – diciptakan sepenuhnya dengan perangkat lunak bebas. Pada tahun 1991, pada saat versi pertama perangkat Linux ditulis, proyek GNU telah menghasilkan hampir semua komponen sistem ini - kecuali kernel.
Torvalds dan pembuat kernel seperti
Linux menyesuaikan kernel mereka supaya dapat berfungsi dengan komponen
32 GNU, dan seterusnya mengeluarkan sistem operasi yang cukup berfungsi. Oleh karena itu, Linux melengkapi ruang terakhir dalam rancangan GNU. Walaupun kernel Linux dilisensikan di bawah GNU General Public License, ia tidak sebesar proyek GNU. Bagi mereka yang hanya biasa menggunakan Windows atau M acintosh, Linux mungkin kelihatan lebih sukar disebabkan perbedaan dalam melakukan berbagai kerja komputer. Dan lagi pengguna perlu menukar program yang sering digunakan, disebabkan program tersebut tidak didapati dalam Linux (atau pilihan yang agak terbatas, misalnya permainan komputer). Faktor lain adalah sifat ragu – ragu pengguna yang merasa susah untuk melepaskan sistem operasi mereka (banyak pengguna masih menggunakan Windows). Selain itu, kebanyakan komputer didatangkan dengan Windows siap pakai (pre-installed). Faktor – faktor ini menyebabkan perkembangan Linux yang agak terlambat. Walau bagaimanapun, kelebihan Linux seperti biaya rendah, sekuritas yang lebih aman, dan tidak bergantung pada vendor, telah meningkatkan penggunaan yang luas di kalangan korporasi dan perkantoran. Dalam situasi ini, halangan yang disebut diatas dapat dikurangi karena hanya aplikasi/utility yang terbatas digunakan, serta administrasi dan konfigurasi komputer (administrasi) dikendalikan oleh sekumpulan pekerja pakar IT yang sedikit. Proses pemasangan (instalasi) yang sukar sering-kali menjadi penghalang bagi pengguna baru, namun proses ini sekarang menjadi lebih mudah akhir-akhir ini. Dengan penerimaan Linux oleh beberapa pabrikan PC (komputer pribadi) terbesar, komputer built-up dengan distribusi Linux banyak ditemukan. Ada juga distribusi Linux yang dapat di-boot secara langsung dari CD (live CD) tanpa
33 perlu memasangnya ke dalam harddisk. Contoh – contoh distribusi Linux berbentuk live CD adalah Knoppix/Gnoppix, Kubuntu/Ubuntu dan Gentoo. Bahkan saat ini hampir semua distribusi Linux menyediakan live CD bagi produknya. Format ISO bagi CD untuk distribusi Linux tersebut biasanya dapat diunduh dari internet, ditulis ke dalam CD dan selanjutnya dapat digunakan sebagai bootable CD.
2.9.1
Linux Ubuntu Ubuntu merupakan sebuah sistem operasi yang cocok diterapkan di
laptop, komputer desktop, dan server. M eskipun digunakan di rumah, di sekolah, atau di tempat kerja, Ubuntu memiliki semua aplikasi yang dibutuhkan, mulai dari word processing dan aplikasi email, hingga software web server dan programming tools. Ubuntu berasal dari kata Afrika yang berarti ‘Humanity to others’, atau ‘I am what I am because of who we all are’. (http://www.ubuntu.com/)
2.9.1.1 Ubuntu Server Edition Ubuntu Server Edition – dibangun diatas fondasi Debian yang dikenal dari instalasi server-nya yang robust – memiliki heritage yang kuat untuk performa yang reliable, dan evolusi yang mudah diprediksi. Ubuntu Server Edition merubah server market untuk bisnis dengan membawa free software terbaik keatas stable, didukung penuh dan dengan platform yang aman. Dalam 2 tahun sejak diluncurkan, Ubuntu sekarang dapat
34 ditemukan di ratusan organisasi di seluruh dunia dengan membawa key services reliably, predictably, dan economically. Ubuntu Server Edition efisien dari segi energi, low memory, dan disk footprint OS yang memberikan bantuan dalam membangun fungsi server yang respek terhadap lingkungan kita dengan tanpa kompromi dalam hal agility dan versality. Ubuntu Server Edition dapat menjadi tulang punggung dari banyak service yang dibutuhkan oleh bisnis-bisnis tipikal untuk dapat sukses. Dengan tanpa biaya lisensi, ekosistem yang luas, minimal maintenance, komuniti peers dan references yang berkembang, Ubuntu Server Edition membuat banyak organisasi berpikir ulang bagaimana mereka menggunakan Linux untuk kebutuhan teknologi informasi mereka. M elalui penggunaan Ubuntu, kita percaya bahwa user dapat menikmati unprecedented performance, dan sekuriti yang Linux dapat sediakan. Ubuntu Server Edition memiliki kelebihan :
2.10
•
M udah berintegrasi dalam jaringan yang sudah ada.
•
M enyediakan biaya / cost kepemilikan yang rendah.
•
M enawarkan multiple skenario life cycle yang bisa dipilih.
•
M embawa free life maintenance.
•
Dan didukung oleh Canonical’s world support.
PHP PHP merupakan bahasa pemrograman web yang bersifat server side, dimana semua operasi (pengambilan data, penghapusan data, dan sebagainya)
35 dilakukan di server sehingga keamanan database dapat terjamin. PHP diperkenalkan pada tahun 1995 oleh Rasmus Lerdof, yang pada awalnya berupa script perl sederhana yang digunakan untuk menghitung pengunjung yang datang ke situs Rasmus. Versi pertama diperkenalkan dengan nama Personal Home Page Tools yang kemudian sampai saat ini telah berkembang menjadi versi 5 yang menggunakan Zend Engine.(http://php.net) Sedangkan menurut Larry Ulman (2005, p.7-8), PHP merupakan serverside language. Ini menunjukkan bahwa kode-kode yang ditulis di PHP terletak di sebuah komputer host server. Server mengirim halaman web ke pengunjung yang melakukan request (client, melalui Web browser). Ketika client membuka website yang dibuat memakai PHP, server akan membaca kode PHP tersebut dan kemudian memprosesnya sesuai dengan petunjuk didalam script PHP tersebut. Kode-kode PHP akan memberitahu server untuk mengirim data yang sesuai – kode HTM L – ke web browser, yang melayani kode yang diterima sebagai halaman HTM L standar. Ini berbeda dengan situs HTM L statis dimana, ketika request dibuat, server akan mengirim data HTM L ke web browser dan tidak terjadi interpretasi server-side. Dan, kepada user, dan web browser, tidak ada perbedaan yang perseptibel antara home.html dan home.php yang terlihat, akan tetapi bagaimana konten daripada halaman tersebut dibuat yang akan secara signifikan berbeda.
36 2.11
Database M enurut Connoly dan Begg (2005,p15), database adalah kumpulan – kumpulan data yang saling berhubungan secara logis dan deskripsi dari data – data tersebut, yang dirancang untuk memenuhi kebutuhan informasi dari perusahaan. M enurut Ramakrishnan dan Gerrke (2003, p4), database adalah sebuah kumpulan data yang mendeskripsikan aktivitas – aktivitas dari satu atau lebih organisasi yang berhubungan. Dari kedua pengertian diatas, dapat disimpulkan bahwa database adalah kumpulan data yang saling berhubungan dan menggambarkan aktivitas atau proses bisnis dalam suatu perusahaan. Software atau aplikasi yang bertugas untuk mengatur, menyimpan, memodifikasi data disebut dengan software database engine dan lebih resminya disebut dengan DBM S (Database Management System). Terdapat banyak sekali aplikasi DBM S yang berjalan, mulai dari personal computer (PC) sampai ke komputer skala mainframe. Contoh – contoh dari aplikasi database engine misalnya seperti : SQL Server MS Access, yang dibuat oleh Microsoft, Oracle Database, yang dibuat oleh Oracle, MySQL, yang dibuat oleh MySQL AB, Firebird, PostgreSQL, DB2, dan lain-lain. Di dalam database, kumpulan fakta yang saling berhubungan disimpan secara bersama dan tanpa pengulangan (redudansi) yang tidak perlu, untuk memenuhi berbagai keperluan penyediaan informasi lebih lanjut. Data di dalam basis data perlu diorganisasikan sedemikian rupa, supaya informasi yang dihasilkan berkualitas dan efisiensi kapasitas penyimpanannya pun terjamin. Database tersusun atas bagian yang disebut field dan record yang tersimpan dalam sebuah file. Sebuah field merupakan kesatuan terkecil dari informasi
37 dalam sebuah database. Sekumpulan field yang saling berkaitan akan membentuk record.
2.11.1 MySQL MySQL adalah sebuah relational database management system (RDBM S) yang bersifat open source. Dengan konsep RDBM S, MySQL tidak menyimpan data kedalam sebuah area yang besar namun ke dalam tabel-tabel database. MySQL mengimplementasikan konsep client-server yang terdiri dari daemon mysqld dan beragam jenis aplikasi client dan library. MySQL adalah open source database server yang menawarkan fitur yang tidak kalah baiknya dengan database server lain seperti SQL Server 2000. MySQL pertama kali dikeluarkan tahun 1998 yang penggunaanya langsung mendapatkan tempat istimewa di dunia pengembangan. MySQL juga bersifat multiplatform dan dapat digunakan dalam UNIX, M acOS, dan Microsoft Windows. (http://mysql.com). Awalnya MySQL dijalankan pada system operasi Unix dan Linux. Tapi, bagi para penggemar Windows pun sekarang sudah tersedia MySQL versi Windowsnya. M ereka yang menggunakan Linux (RedHat, M andrake, dsb), biasanya MySQL sudah terinstall secara default. Bila belum bisa diinstall maka dengan cukup mudah dapat menginstallnya menggunakan RPM (RedHat Package Manager).
38 2.12
Video S treaming M enurut total.or.id , Video Streaming adalah istilah yang dipergunakan untuk menyaksikan siaran video secara live melalui Internet. Berbeda dengan cara lain, yakni mengunduh file video dan menjalankannya di komputer user setelah proses download selesai, dengan streaming kita dapat menyaksikan langsung tanpa perlu mengunduh file-nya terlebih dahulu. Dengan teknologi video streaming ini, kita juga dapat menonton televisi melalui Internet.
2.13
Multimedia Application M enurut total.or.id, Multimedia Application adalah perangkat lunak aplikasi multimedia. Perangkat lunak ini digunakan untuk mengolah data digital dengan format multimedia. Aplikasi multimedia saat ini sangat banyak dan beragam. Dikatakan multimedia karena selain penggunaan media teks, aplikasi ini dapat memproses / menampilkan dalam bentuk yang lain yaitu gambar, suara dan film. Aplikasi M ultimedia sangat berkaitan dengan format data yang di gunakan. Aplikasi M ultimedia umumnya di pisahkan lagi menjadi aplikasi yang di gunakan untuk membuat, yang hanya di gunakan untuk menampilkan saja dan aplikasi pengaturan.