"SELAMAT DATANG DI SITE CAH NDARJO"

Selasa, 01 September 2009

Marhaban ya Ramadhan

Selamat menunaikan ibadah Puasa
Sucikan hati bersihkan diri

Selasa, 04 Agustus 2009

"sukses"

Ujian Tugas Akhir (TA) : 22 April, 2009
D3 Teknik Komputer dan Jaringan (TKJ) STMIK AUB Surakarta
==============================================

di bulan Maret 2009, proyek Tugas Akhir q kerjakan dgn kelompok (Marwoto n Sronang) dengan rasa penuh tanggungjawab semua pekerjaan baik laporan maupun proyek tugas akhir q kerjakan bersama-sama kelompok n dibantu oleh temen2 q yang baik Supri,MaZAdi,Hanux n yg laen, q dibimbing oleh Dosen Margono, S.Kom.
22 April 2009 hari yang ku tunggu
kuhadapi dengan tegar...
kuhadapi dengan senyuman...
dengan persiapan yang lumayan,
akhirnya...
q n temen2 dinyatakan "LULUS"

terima kasih semua....
atas bantuannya

Minggu, 17 Agustus 2008

Indonesia Jaya

Genap 63 tahun negeriku
Semoga...
Negeri ku semakin maju n sejahtera

OCR (Concepts and Design)1 by George Coloures

KATA PENGANTAR Edisi ketiga buku OUf tiba pada saat sistem terdistribusi, khususnya aplikasi Internet berbasis Web dan lainnya dan jasa. yang menarik belum pernah terjadi sebelumnya dan kepentingan. Buku ini bertujuan untuk menyampaikan wawasan, dan pengetahuan, prinsip-prinsip dan praktek yang mendasari desain sistem terdistribusi, baik berbasis internet dan sebaliknya. Informasi disediakan secara cukup mendalam untuk memungkinkan pembaca untuk mengevaluasi sistem yang sudah ada atau desain yang baru. studi kasus Detil menggambarkan konsep untuk setiap topik utama. Sistem terdistribusi teknik yang dikembangkan selama dua hingga tiga dekade terakhir, seperti komunikasi interprocess dan pemanggilan remote. penamaan didistribusikan, keamanan kriptografi, sistem berkas terdistribusi, replikasi data dan mekanisme transaksi didistribusikan, menyediakan waktu menjalankan aplikasi jaringan infrastruktur pendukung saat ini komputer. pengembangan sistem terdistribusi semakin bergantung pada dukungan middleware melalui penggunaan kerangka perangkat lunak yang menyediakan abstraksi seperti objek-objek yang terdistribusi dan jasa, termasuk aman, otentikasi dan kontrol akses komunikasi, mobile code, transaksi dan mekanisme penyimpanan persisten. Dalam waktu dekat, aplikasi terdistribusi akan memungkinkan kerjasama yang lebih erat antara pengguna melalui data direplikasi dan data multimedia stream, dan akan mendukung mobilitas pengguna dan perangkat menggunakan jaringan nirkabel dan spontan. Pengembang sistem terdistribusi dan aplikasi sekarang manfaat dari berbagai berguna, alat-alat bahasa dan lingkungan. Hal ini memungkinkan siswa serta pengembang profesional untuk membangun kerja aplikasi terdistribusi. Tujuan dan pembaca Buku ini dimaksudkan untuk digunakan dalam program sarjana dan pasca sarjana pengantar. Hal yang sama dapat digunakan untuk belajar-sendiri. Kami mengambil pendekatan top-down, mengatasi masalah yang akan diselesaikan dalam desain sistem terdistribusi dan menggambarkan pendekatan yang berhasil dalam bentuk model abstrak, algoritma dan studi kasus rinci tentang sistem secara luas digunakan. Kami menutupi lapangan di kedalaman yang cukup dan luas untuk memungkinkan pembaca untuk terus belajar makalah penelitian yang paling dalam literatur pada sistem terdistribusi. Kami bertujuan untuk membuat subjek diakses kepada siswa yang memiliki pengetahuan dasar tentang pemrograman berorientasi objek, sistem operasi dan arsitektur komputer dasar. Buku ini mencakup cakupan aspek-aspek jaringan komputer relevan dengan sistem terdistribusi, termasuk teknologi yang mendasari untuk Internet, luas lahan, area lokal. dan jaringan nirkabel. Algoritma dan antarmuka yang disajikan di seluruh buku Di Jawa atau III beberapa kasus, ANSI C. Untuk singkatnya dan kejelasan presentasi, bentuk pseudo-code yang berasal dari lavale juga digunakan. Organisasi buku Diagram berikut memperlihatkan bab buku di bawah lima wilayah topik utama. Hal ini dimaksudkan untuk memberikan panduan kepada struktur buku dan untuk menunjukkan rute navigasi direkomendasikan untuk instruktur ingin menyediakan, atau pembaca ingin mencapai, pemahaman tentang berbagai subbidang desain sistem terdistribusi: Referensi Keberadaan dari World Wide Web telah mengubah cara di mana sebuah buku seperti ini bisa dihubungkan untuk sumber bahan termasuk makalah penelitian, spesifikasi teknis dan standar. Banyak dari sumber dokumen sekarang tersedia di web, beberapa hanya tersedia di sana. Untuk alasan singkatnya dan keterbacaan, kami mempekerjakan bentuk khusus dari referensi untuk materi web yang menyerupai longgar URL: referensi seperti (www.omg.org) dan (www.rsasecurity.com) lihat dokumentasi yang tersedia hanya pada web. Mereka dapat dilihat di daftar referensi di akhir buku ini, tetapi URL penuh diberikan hanya dalam versi online dari daftar referensi di situs web hook's:. Www.cdk3.netJrefs mana mereka mengambil bentuk diklik link. Kedua versi dari daftar referensi termasuk penjelasan yang lebih rinci tentang skema ini. Ditulis ulang dan diperpanjang bab: Aku Karakterisasi DS 3 Jaringan dan Intemetworking 4 interprocess Komunikasi 5 Terdistribusi Objek dan Remote Invocation 7 Keamanan 10 Waktu dan Amerika Global 14 Replikasi Yang sama sekali baru bab: 2 Sistem Model II Koordinasi dan Perjanjian 15 Terdistribusi Sistem Multimedia 17 CORBA Studi Kasus Bab yang telah dibawa up-ta-date: 6 Dukungan Sistem Operasi 8 Sistem Berkas Terdistribusi 9 Nama Layanan 12 Transaksi dan Pengendalian Concurrency 13 terdistribusi Transaksi 16 terdistribusi Memori Bersama 18 Mach Studi Kasus Perubahan untuk edisi fhis Edisi ketiga ini muncul sekitar enam tahun setelah edisi kedua. Kerja yang dilakukan untuk menghasilkan edisi ini diringkas dalam tabel di atas. Bab-bab pendahuluan dan beberapa orang lain telah banyak ditulis ulang dan beberapa bab baru telah diperkenalkan untuk mencerminkan perspektif baru dan arah teknis. Ada banyak reorganisasi Bab lainnya, mempengaruhi topik yang dibahas, kedalaman cakupan dan lokasi material. Kami memiliki materi yang lebih tua kental untuk membuat ruang untuk topik baru. Beberapa bahan telah dipindahkan ke posisi yang lebih menonjol untuk mencerminkan arti baru. Studi kasus yang dihapus dari edisi kedua dapat ditemukan di situs web buku. seperti yang dijelaskan di bawah ini. Ucapan Terima Kasih Kami berterima kasih kepada kelas banyak siswa di Queen Mary Westfield College dan yang kontribusinya di seminar dan kuliah telah membantu kami untuk menghasilkan edisi baru, karena memiliki saran bermanfaat dari banyak guru di tempat lain. Kohei Honda diuji draft awal kelas di QMW dan ini mengakibatkan beberapa komentar sangat berharga. Berikut ini memberi waktu mereka unstintingly untuk meninjau porsi besar dari rancangan akhir, sehingga menghasilkan kemajuan yang signifikan: Angel Alvarez, Dave Bakken. John Barton, Boggis Simon, Callaghan Brent, Clarke Keith, Jensen Kurt dan Prowse Roger. Kita juga harus Iike.to mengucapkan terima kasih kepada berikut, yang baik memberikan izin untuk menggunakan materi atau topik yang disarankan untuk dimasukkan dalam buku: Tom Berson. Anwon Bosselaers, Herrlwitch Ralph, Hirsch Frederick, Hopgood Bob, Kshemkalyan Ajay, Roger Needham, Mikael Pettersson, Schantz Rick dan Wheeler David. Kami berterima kasih kepada Departemen Ilmu Komputer, Queen Mary dan Westfield College, untuk hosting situs web dan pendamping untuk Keirn Clarke dan Tom Raja atas dukungan mereka dalam pengaturannya. Akhirnya, kami mengucapkan terima kasih Keith Mansfield, Bridget Allen, Julie Knight dan Kristin Erickson dari Pearson Pendidikan / Addison-Wesley untuk dukungan penting selama proses yang sulit mendapatkan buku I.he ke cetak. Situs web Kami mempertahankan situs web dengan berbagai bahan yang dirancang untuk membantu guru dan pembaca. Hal ini dapat diakses melalui salah satu dari URL: www.cdk3.net www.booksites.nWcdkbook Situs ini meliputi: Daftar Referensi: Daftar referensi yang dapat ditemukan di akhir buku ini direplikasi di situs web. Versi web dari daftar referensi memuat link aktif untuk bahan yang tersedia secara online. Errata list: Suatu daftar kesalahan yang ditemukan dalam buku, dengan koreksi untuk mereka. Bahan Tambahan: Kami berencana untuk mempertahankan satu set bahan tambahan untuk setiap bab. Awalnya, ini terdiri dari kode sumber untuk program-program dalam bahan membaca buku dan relevan yang hadir dalam edisi sebelumnya buku namun dilepas dari yang satu ini karena alasan ruang. Referensi untuk bahan tambahan ini muncul dalam buku dengan link seperti www.cdk3.netJipc. Kontribusi materi pengajaran: Kami berharap dapat memperluas bahan tambahan untuk menutup topik yang baru muncul selama masa edisi ini. Untuk melakukannya, kami mengundang guru untuk menyampaikan bahan ajar, termasuk catatan kuliah dan proyek laboratorium. Sebuah prosedur untuk!. Ia penyerahan bahan tambahan dijelaskan di situs web. Submissions akan ditinjau oleh tim termasuk beberapa guru yang pengguna. Dia buku!. Link ke situs web untuk program menggunakan buku ini: Guru diminta untuk memberitahukan kami tentang program mereka dengan URL untuk indusion dalam daftar. Instruktur's Guide: Terdiri dari: • karya seni lengkap. Dia! Bukunya dalam fonn cocok untuk digunakan sebagai master slide. • Solusi untuk. Dia latihan (dilindungi oleh password yang tersedia hanya untuk guru)!. • Bab-bab dengan petunjuk-mengajar, • Disarankan proyek laboratorium. ISI KATA PENGANTAR 1.1 Pendahuluan 1.2 Contoh-contoh sistem terdistribusi 1.3 Sumber Daya berbagi dan Web 1.4 Tantangan 1.5 Ringkasan 2 MODEL SISTEM 2.1 Pendahuluan 2.2 Model Arsitektur 2.3 Fundamental model 2.4 Ringkasan 3 NETWORKING DAN InterNetworking 3.1 Pendahuluan 3.2 Jenis jaringan 3.3 Jaringan prinsip 3.4 protokol Internet 3.5 studi kasus Jaringan: Ethernet, LAN nirkabel dan ATM 3.6 Ringkasan 4 interprocess KOMUNIKASI 125 4.1 Pendahuluan 4.2 API untuk protokol Internet 4.3 representasi data eksternal dan marshalling 4.4 Klien-server komunikasi 4.5 Kelompok komunikasi 4.6 Studi kasus: komunikasi interprocess dalam UNIX 4.7 Ringkasan 5 TERDISTRIBUSI BENDA DAN Invocation REMOTE 5.1 Pendahuluan 5.2 Komunikasi antara objek terdistribusi 5.3 Remote prosedur panggilan 5.4 Acara dan pemberitahuan 5.5 Java RMI studi kasus 5.6 Ringkasan 6 OPERASI SISTEM PENDUKUNG 6.1 Pendahuluan 6.2 Lapisan sistem operasi 6.3 Perlindungan 6.4 Proses dan thread 6.5 Komunikasi dan doa 6.6 Sistem operasi arsitektur 6.7 Ringkasan 7 KEAMANAN 7.1 Pendahuluan 7.2 Tinjauan tentang keamanan teknik 7.3 algoritma kriptografi 7.4 tanda tangan digital 7.5 Kriptografi pragmatik 7.6 Studi kasus: Needham-Schroeder, Kerberos, SSL & Millicent 7.7 Ringkasan 8 SISTEM FILE TERDISTRIBUSI 8.1 Pendahuluan 8.2 Berkas layanan arsitektur 8.3 Sun Network File System 8.4 Sistem Andrew File 8,5 Recent uang muka 8.6 Ringkasan 9 NAMA LAYANAN 9.1 Pendahuluan 9.2 Nama layanan dan Domain Name System 9.3 Direktori dan layanan penemuan 9.4 Studi kasus Nama Global Service 9.5 Studi kasus dari X.500 Directory Service 9.6 Ringkasan 10 WAKTU DAN NEGARA GLOBAL 10.1 Pendahuluan 10.2 Jam, peristiwa dan menyatakan proses 10.3 Sinkronisasi fisik jam 10.4 logis waktu dan jam yang logis Global 10.5 menyatakan 10.6 Terdistribusi debugging 10.7 Ringkasan 11 COORDINATI ON DAN PERJANJIAN 11.1 Pendahuluan 11.2 terdistribusi saling eksklusi 11.3 Pemilihan 11.4 Multicast komunikasi 11,5 Konsensus dan masalah terkait 11.6 Ringkasan 12 TRANSAKSI- TRANSAKSI DAN PENGENDALIAN concurrency 12.1 Pendahuluan 12.2 Transaksi 12.3 Bersarang transaksi 12.4 Kunci 12,5 kontrol Optimis concurrency 12.6 Timestamp pemesanan 12.7 Perbandingan metode untuk kontrol concurrency 12.8 Ringkasan 13 mendistribusikan TRANSAKSI D 13.1 Pendahuluan 13.2 Flat dan transaksi didistribusikan bersarang 13.3 Atom melakukan protokol 13,4 Concurrency kontrol dalam transaksi terdistribusi 13,5 Terdistribusi kebuntuan 13.6 Transaksi pemulihan 13.7 Ringkasan 14 REPLICATIO N 14.1 Pendahuluan 14.2 Sistem model dan komunikasi kelompok 14.3 FaulHolerant layanan Sangat 14,4 layanan yang tersedia 14,5 Transaksi dengan data replikasi 14.6 Ringkasan 15 mendistribusikan MULTIMEDIA SISTEM D 15.1 Pendahuluan 15.2 Karakteristik data multimedia 15,3 Kualitas manajemen pelayanan 15.4 Pengelolaan sumber daya 15,5 Stream adaptasi 15,6 Studi kasus: Tiger video file server 15.7 Ringkasan 16 mendistribusikan MEMORY DIBAGI D 16.1 Pendahuluan 16.2 Desain dan isu-isu implementasi 16.3 Sequential konsistensi dan Ivy 16,4 Release konsistensi dan Mun; n 16,5 model konsistensi Lainnya 16.6 Ringkasan 17 CORBA STUDI KASUS 17.1 Pendahuluan 17,2 CORBA RMI 17.3 layanan CORBA 17.4 Ringkasan MACH 1B STUDI KASUS 18.1 Pendahuluan 18.2 Pelabuhan, penamaan dan perlindungan 18,3 Tugas dan benang Komunikasi 18,4 model Komunikasi 18,5 pelaksanaan 18.6 Manajemen Memori 18.7 Ringkasan DAFTAR PUSTAKA INDEKS KARAKTERISASI SISTEM TERDISTRIBUSI 1.1 Pendahuluan 1.2 Contoh-contoh sistem terdistribusi 1.3 Sumber Daya berbagi dan Web 1.4 Tantangan 1.5 Ringkasan Sistem terdistribusi adalah satu di mana komponen yang terletak di jaringan komputer berkomunikasi dan mengkoordinasikan tindakan mereka hanya dengan melalui pesan. Definisi ini mengarah pada karakteristik berikut sistem terdistribusi: concurrency komponen, kurangnya jam global dan kegagalan independen komponen. Kami memberikan tiga contoh 01 sistem terdistribusi: • Internet; • Intranet, yang aportion dari internet yang dikelola oleh organisasi; • komputasi mobile dan di mana-mana. Berbagi sumber daya merupakan motivasi utama untuk membangun sistem terdistribusi. Sumberdaya dapat ditangani oleh server dan diakses oleh klien atau mereka mungkin dikemas sebagai objek dan diakses oleh objek klien yang lain. Web dibahas sebagai contoh berbagi sumber daya dan fitur utama diperkenalkan. Tantangan yang timbul dari pembangunan sistem terdistribusi adalah heterogenitas, keterbukaan komponen, yang memungkinkan komponen yang akan ditambahkan atau diganti, keamanan, skalabilitas - kemampuan untuk bekerja dengan baik ketika meningkatnya jumlah pengguna - penanganan kegagalan, konkurensi komponen dan transparansi. 1.1 Pendahuluan Jaringan komputer di mana-mana. Internet adalah satu, sebagaimana banyak jaringan yang terdiri. Ponsel jaringan, jaringan perusahaan, jaringan pabrik, jaringan kampus, jaringan rumah, dalam mobil networh, semua ini, baik secara terpisah dan dalam kombinasi, berbagi karakteristik penting yang membuat mereka subiects relevan untuk belajar di bawah sistem terdistribusi pos. Dalam buku ini kami bertujuan 10 menjelaskan karakteristik dari komputer jaringan yang perancang sistem dampak dan pelaksana dan untuk menyajikan konsep-konsep utama dan teknik yang telah dikembangkan untuk membantu dalam tugas merancang dan menerapkan sistem yang didasarkan pada mereka. Kita mendefinisikan sebuah sistem terdistribusi sebagai salah satu di mana perangkat keras atau perangkat lunak komponen yang terletak di jaringan komputer berkomunikasi dan mengkoordinasikan tindakan mereka Pada ly melewati pesan. Definisi sederhana mencakup rentang enlire sistem di mana jaringan komputer berguna dapat digunakan. Komputer yang dihubungkan oleh jaringan mungkin spasial dipisahkan oleh jarak apapun. Mereka mungkin berada di benua yang terpisah, di gedung yang sama atau ruangan yang sama. Definisi kami tentang sistem terdistribusi memiliki konsekuensi penting sebagai berikut. Concurrency: Dalam sebuah jaringan komputer, pelaksanaan program bersamaan adalah norma. Saya bisa melakukan pekerjaan saya di komputer saya saat Anda melakukan pekerjaan Anda pada Anda, sharingresourCes seperti halaman web atau file bila diperlukan. Kapasitas sumber daya bersama tohandle sistem dapat ditingkatkan dengan menambahkan lebih banyak sumber daya (untuk example.computers) ke jaringan. Kami akan menjelaskan cara-cara yang kapasitas ekstra ini dapat bermanfaat banyak digunakan puints al dalam buku ini. Koordinasi merangkap melaksanakan program yang berbagi sumber daya juga merupakan topik yang penting dan berulang. Tidak ada jam global: Ketika program perlu bekerja sama mereka mengkoordinasikan tindakan mereka dengan bertukar pesan. Tutup koordinasi sering tergantung pada ide bersama dari waktu di mana tindakan program 'terjadi. Tapi ternyata bahwa ada batas untuk akurasi dengan mana Komputer dalam jaringan dapat menyinkronkan jam mereka - tidak ada nOlion global tunggal waktu yang tepat. Ini adalah akibat langsung dari fakta bahwa komunikasi hanya dengan mengirimkan pesan melalui jaringan. Contoh masalah ini waktu dan solusi kepada mereka akan dijelaskan dalam Bab 10. Independentjailures: Semua sistem komputer dapat gagal dan merupakan tanggung jawab perancang sistem untuk merencanakan konsekuensi dari kegagalan yang mungkin. sistem terdistribusi dapat gagal dalam cara-cara baru. Kesalahan dalam hasil jaringan di uf isolasi komputer yang terhubung, tetapi itu tidak berarti bahwa mereka berhenti berjalan. Bahkan program pada mereka mungkin tidak dapat mendeteksi apakah jaringan telah gagal atau telah menjadi luar biasa lambat. Demikian pula, ofa kegagalan komputer, atau tennination tak terduga program di suatu tempat dalam sistem (crash a) tidak segera dilakukan diketahui komponen-komponen lain yang berkomunikasi. Setiap komponen sistem bisa gagal independen, meninggalkan yang lain masih berjalan. Konsekuensi, dari karakteristik sistem terdistribusi akan menjadi tema recuning di seluruh buku ini. Motivasi untuk membangun dan menggunakan sistem terdistribusi berasal dari keinginan untuk berbagi sumber daya. 'Sumber daya' Istilah yang agak abstrak, tapi ciri terbaik kisaran usefulIy hal-hal yang dapat dibagi dalam sistem compUler jaringan. Ia meluas dari komponen perangkat keras seperti disk dan printer untuk entitas perangkat lunak yang ditentukan seperti file. database dan objek data dari segala jenis. Ini sakit Cludes aliran frame video yang muncul dari kamera video digital dan koneksi audio yang II. telepon selular merupakan. Tujuan dari chapler ini adalah 10 menyampaikan pandangan yang jelas tentang sifat sistem terdistribusi dan tantangan yang harus diatasi dalam rangka untuk memastikan lhat mereka sukses. Bagian 1.2 memberikan beberapa ellamples kunci ofdistributed sistem, komponen dari mana mereka dibangun dan tujuan-tujuan mereka. Bagian 1.3 mengeksplorasi desain sistem sumber daya-sharing dalam konteks dari World Wide Web. Bagian .4 menggambarkan tantangan utama yang dihadapi oleh para perancang sistem terdistribusi:. helerogeneity, keterbukaan, suurity. skalabilitas, penanganan kegagalan. concurrency dan kebutuhan untuk transparansi. 1.2 Contoh-contoh sistem terdistribusi contoh kami didasarkan pada kenal dan banyak digunakan jaringan komputer: internet, intranet dan r.be muncul tee-Imoloty jaringan berdasarkan perangkat mobile. 'Mereka dirancang untuk contoh berbagai macam layanan dan aplikasi yang slipponed oleh jaringan komputer dan untuk memulai diskusi tentang masalah teknis yang mendasari implemenlation mereka. 1.2.1 Internet The Inlemet adalah kumpulan besar saling berhubungan jaringan komputer jenis differenl banyak. Gambar 1.1 menggambarkan sebagian khas Internet. Program yang berjalan pada komputer yang terhubung untuk berinteraksi dengan cara pesan lewat, menggunakan sarana umum komunikasi. Desain dan konstruksi mekanisme komunikasi internet (protokol Internet) adalah Achie teknis utama,, 'ement, memungkinkan program yang berjalan di mana saja ke alamat pesan ke program di tempat lain. Internet juga merupakan sistem terdistribusi yang sangat besar. Ini memungkinkan "pengguna, dimanapun mereka berada, untuk menggunakan layanan seperti World Wide Web, email dan transfer file (Memang, kadang-kadang salah Web disamakan dengan Internet) The set layanan terbuka-berakhir... - dapat diperpanjang dengan penambahan komputer server dan jenis layanan yang baru Gambar ini menunjukkan kumpulan intmnets -.. subnetworks dioperasikan oleh perusahaan dan organisasi lain Internet Service Provider (ISP) adalah perusahaan yang menyediakan link modem dan jenis koneksi ke pengguna individu dan organisasi kecil, memungkinkan mereka untuk mengakses layanan mana saja di Internet serta memberikan layanan lokal seperti email dan web hosting. Para intranet yang dihubungkan oleh tulang punggung backbone adalah link jaringan dengan kapasitas transmisi tinggi,. mempekerjakan satelit koneksi, kabel serat optik dan lain-bandwidth tinggi sirkuit. Layanan Multimedia yang tersedia di Internet, yang memungkinkan pengguna untuk mengakses data audio dan video termasuk saluran musik, radio dan TV dan untuk mengadakan konferensi telepon dan video. Kapasitas Internet untuk menangani kebutuhan komunikasi khusus data multimedia saat ini sangat terbatas karena tidak menyediakan fasilitas yang diperlukan untuk kapasitas cadangan jaringan bagi individu aliran data. Bab 15 membahas kebutuhan sistem multimedia terdistribusi. Pelaksanaan Internet dan layanan yang mendukung telah berbuntut pada pengembangan solusi praktis untuk banyak masalah sistem terdistribusi (termasuk sebagian besar yang ditetapkan dalam Bagian 4). Kita akan menyoroti solusi dalam buku ini, menunjukkan ruang lingkup dan keterbatasan mereka jika perlu. 1.2.2 Intranets Sebuah intranet adalah bagian dari internet yang dikelola secara terpisah dan memiliki houndary yang dapat dikonfigurasi untuk menegakkan kebijakan keamanan lokal. Gambar 1.2 menunjukkan sebuah intranet khas. Hal ini terdiri dari beberapa jaringan area lokal (LAN) yang dihubungkan oleh koneksi backbone. Konfigurasi jaringan intranet paiticular adalah tanggung jawab organisasi yang mengelola dan dapat sangat bervariasi - mulai dari LAN di lite tunggal untuk satu set terkoneksi dari LAN milik cabang perusahaan atau organisasi lainnya di berbagai negara. Sebuah intranet tersambung Internet melalui router, yang memungkinkan pengguna dalam intranet untuk menggunakan layanan di tempat lain seperti web atau email Hal ini juga memungkinkan pengguna di intranet lain untuk mengakses layanan yang disediakan. Banyak organisasi perlu untuk melindungi pelayanan mereka sendiri dari penggunaan yang tidak sah oleh pengguna mungkin berbahaya di tempat lain. Sebagai contoh, perusahaan tidak akan ingin informasi aman untuk dapat diakses oleh pengguna di organisasi bersaing, dan rumah sakit tidak akan mau data pasien sensitif untuk diungkapkan. Perusahaan juga ingin melindungi diri dari program-program berbahaya seperti virus masuk dan menyerang komputer di intranet dan mungkin menghancurkan data berharga. Peran firewall adalah untuk melindungi intranet dengan mencegah pesan-pesan yang tidak sah meninggalkan atau memasuki. Firewall diimplementasikan dengan menyaring pesan masuk dan keluar, misalnya menurut sumber atau tujuan. Firewall mungkin misalnya mengizinkan hanya pesan yang terkait untuk mengakses email dan web untuk masuk ke atau keluar dari intranet yang melindungi. Beberapa organisasi tidak ingin terhubung jaringan internal mereka ke Internet sama sekali. Misalnya, polisi dan keamanan lainnya dan lembaga penegak hukum cenderung memiliki setidaknya beberapa jaringan internal yang isolaled dari dunia luar. dan Pelayanan Kesehatan Nasional Inggris telah choseo ke danau yang sensitif melihat data medis pasien yang terkait hanya dapat dilindungi dengan mempertahankan jaringan internal secara fisik terpisah. Beberapa organisasi militer lepaskan jaringan internal dari Internet di masa perang. Tetapi bahkan organisasi-organisasi tersebut akan ingin mendapatkan keuntungan dari sejumlah besar perangkat lunak aplikasi dan sistem yang menggunakan protokol komunikasi internet. Solusi yang biasanya diadopsi oleh organisasi tersebut adalah 10 beroperasi intranet seperti dijelaskan di atas. tetapi tanpa koneksi ke Internet. Seperti intranet dapat membuang firewall, atau, dengan kata lain, ia memiliki firewall yang paling efektif mungkin - tidak adanya koneksi fisik ke Internet. Isu-isu utama yang timbul dalam perancangan komponen yang digunakan dalam intranet adalah: • File jasa diperlukan untuk memungkinkan pengguna untuk berbagi data, rancangan ini dibahas dalam Bab 8. • Firewalls cenderung untuk menghalangi akses ke layanan yang sah - ketika sumber daya shariog antara pengguna internal dan eksternal diperlukan. firewall harus dilengkapi dengan menggunakan mekanisme keamanan fine-grained; ini dibahas dalam Bab 7. • Instalasi biaya ofsoftware dan dukungan adalah isu imponant. Biaya ini dapat dikurangi dengan menggunakan sistem arsitektur seperti komputer nelwork dan klien tipis. diuraikan dalam Bab 2. 1.2.3 Mobile dan di mana-mana komputasi Kemajuan teknologi dalam miniaturisasi perangkat dan jaringan nirkabel telah menyebabkan semakin dengan integrasi perangkat komputasi kecil dan portabel ke dalam sistem terdistribusi. Perangkat ini meliputi: • Laptop komputer. • Handheld perangkat, termasuk asisten personal digital (PDA), ponsel, pager, kamera video dan kamera digital. • Dpt dipakai perangkat, seperti jam tangan pintar dengan fungsi mirip dengan PDA • Perangkat tertanam dalam peralatan seperti mesin cuci, sistem hi-fi, mobil dan lemari es.. Portabilitas dari banyak perangkat tersebut. bersama dengan kemampuan mereka untuk terhubung dengan nyaman ke jaringan di tempat yang berbeda, membuat komputasi mobile mungkin. komputasi Mobile (juga disebut nomaden komputasi [Kleinrock 1997, www.cooltown.hp.comJ) adalah pelaksanaan tugas komputasi sementara pengguna di ffim dalam / e, atau mengunjungi placesanother daripada lingkungan biasa. Dalam komputasi mobile, pengguna yang jauh dari intranet rumah mereka (intrunet di tempat kerja, atau tempat tinggal mereka) masih disediakan dengan akses ke sumber daya melalui perangkat yang mereka bawa dengan mereka. Mereka bisa terus mengakses Internet, mereka dapat terus mengakses sumber daya di intranet rumah mereka, dan ada peningkatan ketentuan bagi pengguna untuk memanfaatkan sumber daya seperti printer yang nyaman di dekatnya saat mereka bergerak. Yang terakhir ini juga dikenal sebagai lokasi-aware komputasi. Mana-mana komputasi [Weiser 1993] adalah memanfaatkan banyak kecil, perangkat komputasi murah yang hadir di lingkungan fisik pengguna. termasuk rumah. kantor dan tempat lain. Istilah 'di mana-mana' dimaksudkan untuk menunjukkan bahwa perangkat komputasi yang kecil pada akhirnya akan menjadi begitu meresap dalam benda sehari-hari bahwa mereka hampir tidak menyadarinya. Itulah. perilaku komputasi mereka akan Iransparently dan diikat erat dengan fungsi fisik mereka. Kehadiran komputer di mana-mana hanya menjadi berguna bila mereka dapat berkomunikasi dengan satu sama lain. Sebagai contoh, akan lebih mudah bagi pengguna untuk mengendalikan mesin mereka cuci dan sistem mereka hi-fi dari perangkat 'universal remote control' di rumah. Sama, mesin cuci bisa halaman pengguna melalui lencana pintar atau menonton ketika mencuci dilakukan. Mana-mana dan mobile computing tumpang tindih, karena mer mobile dapat di manfaat prinsip dari komputer yang mana-mana. Tapi mereka berbeda, secara umum. komputasi Ubiquitous bisa menguntungkan pengguna sementara mereka tetap berada dalam lingkungan tunggal seperti rumah atau rumah sakit. Demikian pula, komputasi mobile memiliki kelebihan bahkan jika itu hanya melibatkan konvensional, komputer diskrit dan perangkat seperti laptop dan printer. Gambar 1.3 menunjukkan pengguna yang mengunjungi sebuah organisasi induk. Gambar ini menunjukkan intranet home pengguna dan intranet host pada situs yang ascr yang mengunjungi. Kedua intranet makan terhubung ke seluruh internet. Pengguna memiliki akses ke tiga bentuk koneksi nirkabel. laptop mereka memiliki sarana penghubung ke LAN nirkabel tuan rumah. Jaringan ini menyediakan jangkauan beberapa ratus meter (lantai bangunan, misalnya). Terhubung ke seluruh intranet hust melalui gateway. Pengguna juga memiliki telepon (seluler) mobile. yang terhubung ke Internet menggunakan Wireless Application Protocol (WAP) melalui gateway (lihat Bab 3). Ponsel ini memberikan akses ke halaman yang sederhana, infonnation tekstual. Yang hadiah pada layar kecil. Akhirnya, pengguna membawa kamera digital, yang dapat berkomunikasi melalui link infra-merah pada saat menunjuk pada perangkat yang sama seperti printer. Dengan infrastruktur sistem yang cocok. pengguna dapat melakukan beberapa tugas-tugas sederhana di situs host dengan menggunakan perangkat yang mereka bawa. Sedangkan perjalanan ke situs host, user dapat mengambil harga saham terbaru dari web server menggunakan telepon selular. Selama pertemuan dengan tuan rumah mereka, pengguna dapat menunjukkan satuan panas foto terbaru dengan mengirimkan dari kamera digital langsung ke printer sesuai diaktifkan di ruang rapat. Hal ini hanya membutuhkan link infra-merah antara kamera dan printer. Dan mereka dapat secara prinsip mengirim dokumen dari laptop mereka ke printer yang sama. menggunakan LAN nirkabel dan link Ethernet kabel ke printer. Mobile dan komputasi mengangkat isu-isu di mana-mana sistem yang signifikan (Milojicic et al 1999.. P. 266. Weiser 1993). Bagian 2.2.3 menyajikan sebuah arsitektur untuk komputasi mobile dan menguraikan masalah lhat timbul dari itu. termasuk cara untuk mendukung penemuan sumber daya dalam lingkungan tuan rumah; menghilangkan kebutuhan bagi pengguna untuk mengkonfigurasi ulang perangkat mobile mereka ketika mereka bergerak di sekitar, membantu pengguna untuk mengatasi dengan konektivitas terbatas karena mereka melakukan perjalanan, dan memberikan privasi dan jaminan keamanan lainnya kepada pengguna dan lingkungan yang mereka kunjungi. 1.3 Sumber Daya berbagi dan Web Pengguna begitu terbiasa dengan manfaat dari berbagi resowce tlw mereka dengan mudah dapat mengabaikan signifikansi mereka. Kami secara rutin berbagi sumber daya perangkat keras seperti printer. sumber data seperti file. dan sumber daya dengan fungsionalitas yang lebih spesifik seperti mesin pencari. Dilihat dari sudut pandang penyediaan perangkat keras. kita berbagi peralatan seperti printer dan disk untuk mengurangi biaya. Tapi jauh lebih penting bagi pengguna adalah mereka berbagi sumber daya yang lebih tinggi yang playa bagian dalam aplikasi mereka dan dalam pekerjaan sehari-hari dan aktivitas sosial. Sebagai contoh, pengguna prihatin dengan berbagi data dalam bentuk database bersama atau satu set halaman web - nol disk dan prosesor yang mereka diimplementasikan pada. Demikian pula, pengguna berpikir dalam hal sumber daya bersama, misalnya mesin pencari atau konverter mata uang, tanpa memperhatikan untuk server atau server yang menyediakan ini. Dalam prakteknya, pola bagi hasil sumber daya sangat bervariasi dalam lingkup mereka dan bagaimana pengguna erat bekerja sama. Pada satu ekstrim, sebuah mesin pencari di Web menyediakan fasilitas untuk pengguna di seluruh dunia, pengguna yang membutuhkan tidak pernah datang ke dalam kontak dengan satu sama lain secara langsung. Pada ekstrem yang lain, dalam bekerja koperasi komputer yang didukung (CSCW), sekelompok pengguna yang bekerja sama secara langsung berbagi sumber daya seperti dokumen dalam kelompok, kecil tertutup. Pola sharing dan distribusi geografis dari pengguna tertentu menentukan mekanisme apa sistem harus pasokan untuk mengkoordinasikan tindakan pengguna. Kami menggunakan layanan Tenn untuk bagian yang berbeda dari sebuah sistem komputer yang mengelola koleksi sumber daya terkait dan menyajikan fungsi mereka untuk pengguna dan aplikasi. Sebagai contoh, file akses kami berbagi melalui layanan file, kami mengirim dokumen ke printer melalui layanan pencetakan, kita membeli barang melalui layanan pembayaran elektronik. Satu-satunya akses kita harus layanan ini melalui seperangkat operasi yang diekspor. Sebagai contoh, sebuah layanan file menyediakan membaca, menulis dan menghapus operasi pada file. Fakta bahwa layanan membatasi akses sumber daya untuk satu set yang didefinisikan dengan baik dalam praktek operasi adalah bagian rekayasa perangkat lunak standar. Tapi juga mencerminkan organisasi fisik dari sistem terdistribusi. Resources di busur sistem terdistribusi secara fisik encapsulated di dalam komputer dan hanya dapat diakses dari komputer lain dengan komunikasi. Untuk berbagi efektif, setiap sumber daya harus dikelola oleh program yang menawarkan antarmuka komunikasi memungkinkan sumber daya yang akan diakses dan diperbaharui andal dan konsisten. Server Tenn mungkin akrab bagi sebagian besar pembaca. Hal ini mengacu pada program yang berjalan (proses) pada komputer jaringan yang menerima permintaan dari program yang berjalan pada komputer lain untuk melakukan layanan dan merespon dengan tepat. Proses meminta disebut sebagai klien. Permintaan dikirim dalam pesan dari klien ke server dan balasan dikirim dalam pesan dari server ke klien. Ketika client mengirimkan permintaan untuk operasi akan dilaksanakan. kita mengatakan bahwa klien memanggil operasi pada server. Sebuah interaksi yang lengkap antara klien dan server, dari titik ketika klien mengirimkan permintaan untuk ketika menerima respon server, disebut pemanggilan remote. Proses yang sama mungkin baik klien dan server, karena server kadang-kadang memanggil operasi pada server lain. 'Klien' Syarat dan 'server' hanya berlaku untuk memainkan peran dalam permintaan tunggal. Sejauh mereka yang berbeda, klien aktif dan pasif server: server terus berjalan, sedangkan klien terakhir hanya selama aplikasi yang mereka fonn bagian. Perhatikan bahwa secara default 'klien' syarat dan 'server' merujuk kepada proses daripada komputer yang mereka jalankan atas, meskipun dalam bahasa sehari-hari istilah-istilah tersebut juga mengacu pada komputer sendiri. Perbedaan lain, yang akan kita bahas dalam Bab 5, adalah bahwa dalam suatu sistem terdistribusi yang ditulis dalam bahasa berorientasi objek, sumber daya dapat dikemas sebagai objek dan diakses oleh objek klien, dalam hal ini kita berbicara tentang klien memanggil metode objek pada objek server. Banyak, tapi jelas tidak semua, sistem terdistribusi dapat dibangun seluruhnya dalam bentuk inleracting klien dan server. World Wide Web, email dan printer jaringan semua cocok model ini. Kami membahas alternatif sistem client-server dalam Bab 2. Sebuah web browser melaksanakan adalah contoh dari klien. Web browser berkomunikasi dengan server web, untuk meminta halaman web dari itu. Kita sekarang memeriksa Web lebih terinci. 1.3.1 World Wide Web World Wide Web [www.w3.org 1, Berners-Lee 1991] adalah sistem berkembang untuk penerbitan dan mengakses sumber daya dan layanan di Internet. Melalui perangkat lunak web browser yang umum tersedia seperti Netscape dan Internet Explorer, pengguna menggunakan Web untuk mengambil dan melihat dokumen dari berbagai jenis, untuk mendengarkan audio stream dan video stream melihat, dan berinteraksi dengan serangkaian layanan terbatas. Web mulai kehidupan di pusat penelitian nuklir Eropa (CERN), Swiss, pada tahun 1989 sebagai kendaraan untuk dokumen bertukar antara komunitas fisikawan terkoneksi oleh Internet [Bemers-Lee 1999]. Fitur utama dari Web adalah bahwa ia menyediakan struktur hypertext antara dokumen yang menyimpan, yang mencerminkan kebutuhan para pengguna untuk mengatur pengetahuan mereka. Ini berarti bahwa dokumen berisi link - referensi ke dokumen lain dan sumber daya yang juga disimpan dalam Web. Sangat penting untuk pengalaman pengguna dari Web bahwa ketika dia bertemu dengan citra yang diberikan atau bagian teks dalam dokumen, ini akan sering disertai dengan link ke dokumen terkait dan sumber daya lainnya. Struktur link bisa sewenang-wenang kompleks dan serangkaian sumber daya yang dapat ditambahkan adalah terbatas - yang 'web' link memang di seluruh dunia. Bush [1945] disebut sebagai struktur hypertextual lebih dari lima puluh tahun yang lalu, melainkan dengan perkembangan Internet gagasan ini bisa diwujudkan dalam skala dunia. Web adalah sistem terbuka: dapat diperpanjang dan dilaksanakan dengan cara-cara baru tanpa mengganggu fungsi yang ada (lihat Bagian 1.4.2). Pertama, operasi didasarkan pada standar komunikasi dan standar dokumen yang dipublikasikan secara bebas dan secara luas diterapkan. Sebagai contoh, ada banyak jenis browser, masing-masing dalam banyak kasus diimplementasikan pada beberapa platform, dan ada banyak implementasi server web. Setiap browser konforman dapat mengambil sumber daya dari server konforman. Sehingga pengguna memiliki akses ke browser pada sebagian perangkat yang mereka gunakan, dari PDA ke komputer desktop. Kedua, Web terbuka sehubungan dengan jenis 'sumber daya' yang dapat dipublikasikan dan berbagi di atasnya. Pada sederhana, sumber daya di Web adalah halaman web atau beberapa jenis konten lainnya yang dapat disimpan dalam file dan disajikan kepada pengguna, seperti file program, file media, dan dokumen dalam PostScript atau Portable Document Format. Jika menciptakan seseorang, katakanlah, format gambar-penyimpanan baru, maka gambar dalam format ini langsung dapat dipublikasikan di Web. Pengguna memerlukan cara melihat gambar di format baru, tapi browser dirancang untuk mengakomodasi fungsionalitas baru konten-presentasi dalam bentuk aplikasi 'pembantu' dan 'plug-in'. Web telah bergerak di luar sumber data sederhana untuk mencakup layanan, seperti pembelian barang elektronik. Hal ini telah berkembang tanpa mengubah arsitektur dasar. Web didasarkan pada tiga komponen utama teknologi standar: • Para HyperText Markup Language (HTML) adalah bahasa untuk menentukan isi dan tata letak halaman seperti yang ditampilkan oleh web browser. • Unifonn ikal Resource Locator), yang mengidentifikasi dokumen dan sumber daya lain yang disimpan sebagai bagian dari Web. Bab 9 membahas pengenal web lainnya. • Sebuah arsitektur sistem client-server, dengan aturan standar untuk interaksi (HyperText Transfer Protocol - HTIP) dimana browser dan klien lainnya mengambil dokumen dan sumber daya lainnya dari server web. Gambar 1.4 menunjukkan beberapa web server, dan browser membuat permintaan dari mereka. Ini merupakan fitur penting yang pengguna bisa mencari dan mengelola server web mereka sendiri di mana saja di Internet. Kita sekarang membahas komponen ini pada gilirannya, dan dengan demikian menjelaskan pengoperasian browser dan server web ketika pengguna akan mendownload halaman web dan klik pada link di dalamnya. HTML HyperText Markup Language (www.w3.orgIIJisusedtospecifythetext dan gambar yang membentuk isi dari suatu halaman web, dan untuk menentukan bagaimana mereka diletakkan dan diformat untuk presentasi kepada pengguna. Sebuah halaman web berisi item terstruktur seperti judul, paragraf , tabel dan gambar HTML. juga digunakan untuk menentukan link dan sumber daya hich "'yang terkait dengan mereka. HTML teks ini disimpan dalam file server web yang dapat mengakses - mari kita ucapkan earth.html file. Browser mengambil isi file ini dari server web server dalam hal ini pada komputer yang disebut dk3.net www.f •. Browser membaca konten yang dikembalikan oleh server dan menerjemahkannya ke dalam teks berformat dan gambar diletakkan di halaman web dalam mode akrab. Hanya browser - bukan server - menafsirkan teks HTML.. Tetapi server tidak memberitahu browser jenis konten yang akan kembali, untuk membedakannya dari, katakanlah. dokumen dalam PostScript. Server dapat menyimpulkan jenis konten dari ekstensi nama file 'htm!. " . Perhatikan bahwa petunjuk HTML, yang dikenal sebagai tag, diapit oleh tanda kurung siku, seperti

. Jalur I contoh mengidentifikasi file yang berisi gambar untuk presentrltion. URL adalah hup: / / www.cdk3.netIWebExampleilmages/earrh.jpg. Baris 2 dan 5 masing-masing sebuah arahan untuk memulai paragraf baru. Baris 3 dan 6 masing-masing berisi beberapa teks yang akan ditampilkan pada halaman web dalam format paragraf standar. Jalur 4 menentukan link di halaman web. Ini berisi kata 'Bulan' dikelilingi oleh dua related tags HTML dan . Teks antara tag adalah apa yang muncul di link seperti yang disajikan pada halaman web. Kebanyakan browser dikonfigurasi untuk menampilkan teks oflinks digarisbawahi, jadi apa pengguna akan melihat di dalam ayat itu adalah: Selamat Datang di Bumi! Pengunjung juga mungkin tertarik dalam mengambil melihat Bulan. browscr mencatat hubungan antara teks link ditampilkan dan URL yang terkandung dalam Tag - dalam hal ini: http://www.cdk3.netIWebExamp/eimoon.html Bila pengguna mengklik pada teks tersebut, browser mengambil sumber daya diidentifikasi oleh URL yang sesuai dan menyajikan kepada pengguna. Pada contoh, sumber daya adalah sebuah file HTML menetapkan sebuah halaman web tentang Bulan. URL Tujuan dari Uniform Resource Locator [www.w3.orgIII] adalah untuk mengidentifikasi sumber daya sedemikian rupa sehingga memungkinkan browser untuk menemukan sumber daya tersebut. Browser memeriksa URL dalam rangka untuk mengambil sumber daya yang sesuai dari server web. Kadang-kadang jenis pengguna URL ke browser. Lebih umum, browser mendongak URL terkait saat pengguna mengklik link atau memilih salah satu dari mereka 'Bookmark'; atau ketika browser mengambil sumber daya tertanam dalam suatu halaman web, seperti gambar. URL Setiap, dalam bentuk penuh, mutlak, memiliki dua komponen tingkat atas: skema: skema-spesifik-lokasi Komponen pertama, yang 'skema', menyatakan jenis URL ini. URL yang diperlukan untuk menentukan lokasi dari berbagai sumber daya dan juga untuk menentukan berbagai protokol komunikasi untuk mengambil mereka. Sebagai contoh, mai / to.joe @ anISP.net mengidentifikasi alamat email pengguna, ftp:I/ftp.downloadlt.comisoftwareiaProg.exe mengidentifikasi sebuah file yang akan diambil dengan menggunakan File Transfer Protocol (? FT) daripada yang lebih umum digunakan protokol HITP. Contoh lain dari skema adalah 'NNTP' (digunakan untuk menentukan grup berita Usenet), dan 'telnet' (digunakan untuk login ke komputer). Web terbuka sehubungan dengan jenis sumber daya yang dapat digunakan untuk mengakses, berdasarkan dari designators skema dalam URL. Jika seseorang menciptakan jenis baru yang berguna sumber daya 'widget' - mungkin dengan skema pengalamatan sendiri untuk widget menemukan dan protokol sendiri untuk mengakses mereka - maka dunia dapat mulai menggunakan URL widget fonn :.... Tentu saja, browser harus diberikan kemampuan untuk menggunakan protokol 'widget' yang baru, tetapi hal ini dapat dilakukan dengan menambahkan aplikasi pembantu atau plug-in. HTTP URL adalah yang paling banyak digunakan, untuk mengambil sumber daya menggunakan protokol HTTP standar. Sebuah VRL HTTP memiliki dua tugas utama untuk melakukan: untuk identif) • web server yang menjaga sumber daya, dan untuk mengidentifikasi sumber daya pada server yang diperlukan.. Gambar 1.4 menunjukkan tiga browser menerbitkan permintaan sumber dikelola oleh tiga server web. Browser paling atas i. menerbitkan query ke mesin pencari. Browser tengah membutuhkan halaman default situs web lain. Browser paling bawah membutuhkan Lhat halaman web ditentukan secara penuh, termasuk nama path relatif ke server. The berpindah untuk web server yang diberikan diselenggarakan dalam satu atau lebih sub ~ pohon (direktori) dari sistem file server, dan setiap sumber daya diidentifikasi dengan nama path file yang relatif ke server. Secara umum, HTTPURLs berada diluar dari form berikut: http://servername [: purt] [lpathNameOnServer] [? argumen] - Dimana item dalam tanda kurung siku adalah opsional. Sebuah HTTPURLalways lengkap dimulai dengan 'http://' string yang diikuti dengan nama server, dinyatakan sebagai nama Domain Name Service (DNS) (lihat Bagian 9.2). Nama DNS server adalah opsional diikuti dengan nomor dari 'pelabuhan' un yang server mendengarkan permintaan tor (lihat Bab 4). Kemudian datang sumberdaya nama path opsional ofthe server. Jika ini tidak ada maka halaman default web server diperlukan. Akhirnya, URL opsional berakhir dalam satu set argumen - misalnya, jika pengguna mengirimkan entri dalam fonn seperti halaman permintaan mesin pencari. Para URLdesignates firsl halaman default yang disediakan oleh Perang Dunia I ',!, Cdk3.net, berikutnya mengidentifikasi saya pada server www.H '3. Nama orgwhosepath adalah ProrocolslActivity.html. URL yang ketiga menetapkan query ke mesin pencari. Path mengidentifikasi program yang disebut 'pencarian', dan string setelah '? " karakter encode argumen untuk program ini - dalam hal ini menentukan string query. Kami membahas program menunjukkan URL yang lebih terinci ketika kita comider fitur yang lebih canggih di bawah ini. Pembaca juga mungkin telah mengamati keberadaan jangkar di akhir URL - nama yang diawali dengan '#' seperti '# referensi', yang menunjukkan titik di dalam dokumen. Jangkar bukan bagian dari URL diri mereka sendiri tetapi didefinisikan sebagai bagian dari spesifikasi HTML. Hanya browser menafsirkan jangkar, untuk menampilkan halaman web dari titik tertentu. Browser;;. Selalu mengambil seluruh halaman web dari server, bagian nol dari mereka dinotasikan dengan jangkar. Publisl1ing sumber daya: Sementara Web memiliki model yang jelas untuk mengambil sumber daya dari URL-nya, metode untuk menerbitkan sebuah sumber di Web tetap berat dan biasanya memerlukan intervensi manusia. Untuk mempublikasikan sebuah sumber di Web, pengguna harus terlebih dahulu tempat file yang berkaitan dalam direktori server web yang dapat mengakses. Mengetahui nama dari server S dan nama path untuk file P yang server dapat mengenali, pengguna kemudian dapat membangun URL sebagai http://S/P. Pengguna tempat URL ini di alink dari dokumen yang ada atau mendistribusikan URL ke pengguna lain, misalnya melalui email Ada konvensi pathname tertentu yang mengenali server. Sebagai contoh, sebuah awal joe-pathname adalah dengan konvensi di sebuah subdirektori yang umum .. html dari direktori home user joe's. Demikian pula, nama jalan yang berakhir dengan nama direktori daripada file sederhana konvensional mengacu ke file di direktori yang disebut index.html. Huang et al. [2000] menyediakan model untuk memasukkan konten ke Web dengan campur tangan manusia minimal. Hal ini terutama relevan di mana pengguna harus mengekstrak konten dari berbagai perangkat, seperti kamera, untuk publikasi di halaman web, (HyperText Transfer Protocol) HTIP browser dan jenis lainnya klien berinteraksi dengan server web. Bab 4 akan mempertimbangkan HTTP secara lebih rinci, tetapi di sini kita garis besar fitur utama (membatasi diskusi kita dengan pengambilan sumber daya dalam file): interaksi Permintaan-reply: HTTP adalah protokol yang 'permintaan-jawaban'. Klien mengirimkan pesan permintaan ke server yang berisi URL dari sumber daya yang diperlukan. (Server hanya memerlukan bagian dari URL yang mengikuti nama sendiri server DNS.) Server mendongak pathname dan, jika ada, mengirimkan kembali isi file dalam pesan balasan kepada klien. Jika tidak, mengirim kembali respon kesalahan. Isi jenis: Browser belum tentu mampu menangani atau membuat baik penggunaan setiap jenis konten. Ketika browser membuat permintaan, ini berisi daftar jenis konten yang lebih menyukai - misalnya, pada prinsipnya mungkin dapat menampilkan gambar dalam fonnat 'GIF' tapi tidak 'IPEG "Format Server mungkin dapat diambil. hal ini bila ia kembali konten ke browser server meliputi jenis konten dalam pesan balasan sehingga browser akan tahu bagaimana proses itu.. yang string yang menunjukkan jenis konten yang disebut MIME jenis, dan mereka standar dalam RFC 1521 [Borenstein dan Freed 1993] Misalnya, jika konten adalah 'textlhtml' ketik maka browser akan menafsirkan teks sebagai HTML dan menampilkannya;. jika konten adalah maka browser 'imageJOIF' tipe untuk memberikan bantuan sebagai gambar dalam format 'GIF';. 'application / zip' jika jenis konten maka itu adalah data dikompresi dalam fonnat 'zip', dan browser akan meluncurkan aplikasi pembantu eksternal untuk dekompresi itu Serangkaian tindakan yang browser akan mengambil untuk jenis konten tertentu sangat dapat dikonfigurasi, dan pembaca bisa perawatan untuk memeriksa pengaturan ini untuk browser mereka sendiri. Salah satu sumber per permintaan: Dalam versi HTTP \ .0 (yang merupakan versi yang paling banyak digunakan pada saat menulis), permintaan klien satu sumber daya per permintaan HTIP. Jika halaman web berisi sembilan gambar. berkata, lalu browser akan mengeluarkan total sepuluh permintaan yang terpisah untuk mendapatkan seluruh isi halaman. Browser biasanya membuat beberapa permintaan secara bersamaan, untuk mengurangi penundaan secara keseluruhan kepada pengguna. Wikipedia akses kontrol: Secara default, semua user dengan konektivitas jaringan ke web server dapat mengakses semua sumber dayanya diterbitkan. Jika pengguna ingin membatasi akses ke sumber daya, maka mereka dapat mengkonfigurasi server untuk mengeluarkan 'tantangan' untuk setiap klien yang memintanya. Pengguna yang sesuai kemudian harus membuktikan bahwa mereka memiliki hak untuk mengakses sumber daya, misalnya dengan mengetikkan password. Lebih banyak fitur canggih - jasa dan halaman dinamis Sejauh ini kita telah menjelaskan bagaimana pengguna dapat mempublikasikan halaman web dan konten lain yang disimpan dalam file di Web. Isi dapat berubah dari waktu ke waktu, tetapi adalah sama untuk semua orang. Namun, banyak pengalaman pengguna 'dari Web adalah layanan dengan mana pengguna dapat berinteraksi. Sebagai contoh, ketika membeli sebuah barang di sebuah toko on-line, pengguna sering mengisi web Jonn untuk memberikan data pribadi mereka atau untuk menentukan apa yang mereka ingin membeli. Sebuah formulir web adalah halaman web yang mengandung instruksi untuk widget pengguna dan input seperti bidang teks dan kotak cek. Ketika pengguna mengirimkan formulir (biasanya dengan menekan tombol atau 'kembali' kunci), browser mengirimkan HTTPrequestto web server, mengandung nilai bahwa pengguna telah masuk. Karena hasil permintaan tergantung pada input pengguna, server harus memproses input pengguna. Oleh karena itu, URL atau komponen awal menunjuk sebuah program pada server, bukan file. Jika masukan pengguna cukup pendek maka biasanya dikirim sebagai komponen akhir dari URL, setelah '? " karakter (jika tidak dikirim sebagai data tambahan dalam permintaan). Sebagai contoh, permintaan yang berisi URL follGwing memanggil sebuah program yang disebut 'pencarian' di www.google.com dan menetapkan string query dari 'kindberg': http://www.google.com/search?q=kindberg. Program 'pencarian' menghasilkan teks HTML sebagai output, dan pengguna akan melihat daftar halaman yang berisi 'kindberg' kata. (Pembaca mungkin perawatan untuk memasukkan kueri ke dalam mesin pencari favorit mereka dan perhatikan URL yang menampilkan browser ketika hasilnya dikembalikan.) Server mengembalikan teks HTML bahwa program tersebut menghasilkan seakan itu diambil dari file. Dengan kata lain, perbedaan antara konten statis diambil dari file dan konten yang dihasilkan secara dinamis adalah transparan ke browser. Sebuah program yang menjalankan web server untuk menghasilkan konten untuk klien mereka sering disebut sebagai program (CGI) Common Gateway Interface. Suatu program CGI dapat memiliki fungsionalitas aplikasi-spesifik, asalkan dapat mengurai argumen bahwa klien menyediakan untuk itu dan menghasilkan konten dari jenis yang dibutuhkan (biasanya HTML teks). Program ini akan sering comult atau memperbarui database dalam pengolahan permintaan. kode download: Suatu program CGI yang berjalan di server. Kadang-kadang para perancang layanan web memerlukan beberapa kode layanan terkait untuk menjalankan di dalam browser, di komputer pengguna. Sebagai contoh, kode yang ditulis dalam Javascript Iwww.netscape.com] sering download dengan fonn web untuk memberikan interaksi beuer berkualitas dengan pengguna dari yang didukung oleh widget standar HTML. Halaman Javascript disempurnakan dapat memberikan umpan balik pengguna langsung pada entri yang tidak valid (bukan memaksa pengguna untuk memeriksa nilai-nilai di server, yang akan memakan waktu lebih lama). Javascript juga bisa digunakan untuk mengupdate bagian dari isi suatu halaman web tanpa mengambil versi baru seluruh halaman dan re-rendering itu. Javascript memiliki fungsi sangat terbatas. Sebaliknya, appler adalah sebuah aplikasi yang browser secara otomatis mendownload dan berjalan ketika mengambil sebuah halaman web yang sesuai. Applet dapat mengakses jaringan dan menyediakan antarmuka pengguna disesuaikan, dengan menggunakan fasilitas dalam [java.sun.com, Flanagan 1997] bahasa Jawa. Par contoh, aplikasi 'chatting' kadang-kadang diimplementasikan sebagai applet yang berjalan di browser pengguna, bersama-sama dengan program server. The applet mengirim teks pengguna ke server, yang pada gilirannya distrihutes ke semua applet untuk presentasi kepada pengguna. Kami membahas applet secara lebih rinci dalam Bagian 2.2.3. Diskusi Web. Keberhasilan fenomenal The Web bersandar pada kasus dengan sumber daya yang dapat diterbitkan. kesesuaian struktur hypertext untuk mengorganisasikan berbagai jenis informasi. dan keterbukaan arsitektur sistem. Standar atas mana arsitekturnya didasarkan sederhana dan mereka dipublikasikan secara luas pada tahap awal. Mereka telah memungkinkan banyak jenis baru sumber daya dan pelayanan untuk diintegrasikan. Keberhasilan Web memungkiri beberapa masalah desain. Pertama, model hypertext adalah kurang dalam beberapa hal. Jika sumber daya dihapus atau dipindahkan, maka begitu-calIed 'menggantung' link ke bahwa sumber daya masih mungkin tetap, menyebabkan frustrasi bagi pengguna. Dan ada masalah akrab pengguna mendapatkan 'hilang di hyperspace'. Pengguna sering menemukan diri mereka mengikuti link yang berbeda membingungkan banyak, referensi halaman dari koleksi yang berbeda sumber, keandalan yang meragukan dalam beberapa kasus. Search engine adalah berguna untuk melengkapi link-hal berikut sebagai sarana mencari informasi di Web, tapi ini terkenal sempurna dalam menghasilkan apa yang user secara khusus bermaksud. Salah satu pendekatan untuk masalah ini, dicontohkan dalam Resource Description Framework (www.w3.org), adalah untuk standardisasi fonnat metadata tentang sumber daya web. Metadata mencatat atribut sumber daya web, dan ini dibaca oleh 1001s untuk membantu pengguna yang proses sumber daya web secara massal. seperti ketika ~ earching atau kompilasi! isis link terkait. Ada kebutuhan yang meningkat untuk pertukaran berbagai jenis data terstruktur di Web, namun HTML terbatas dalam bahwa hal itu tidak dapat dikembangkan untuk aplikasi di luar browsing informasi. HTML memiliki seperangkat statis struktur seperti paragraf, dan mereka terikat dengan cara data yang akan disajikan untuk mer. Baru-baru ini. yang Extensible Markup Language (XML) (www.w3.orgVI) telah dirancang sebagai cara untuk mewakili data dalam standar, terstruktur, formulir aplikasi spesifik. Sebagai contoh, XML digunakan untuk menggambarkan kemampuan perangkat dan untuk menggambarkan informasi pribadi yang diadakan tentang pengguna. XML merupakan meta-bahasa untuk mendeskripsikan data, yang membuat data portabel di antara aplikasi. The Extensible stylesheet Bahasa Iwww.w3.orgVII] digunakan untuk menyatakan bagaimana data di fonnat XML harus disampaikan kepada pengguna. Dengan menggunakan dua stylesheet yang berbeda, misalnya, informasi yang sama tentang pengguna individu dapat direpresentasikan di halaman web grafis dalam satu kasus dan sebagai daftar sederhana di negara lain. Sebagai arsitektur sistem Web menghadapi masalah skala. web server Populer mungkin mengalami banyak 'hits' per detik, dan sebagai hasilnya respon terhadap pengguna lambat. Bab 2 menjelaskan penggunaan cache di browser dan server proxy untuk mengurangi efek ini. Namun arsitektur client-server Web berarti bahwa ia tidak memiliki cara yang efisien membuat para pengguna up to date dengan versi terbaru dari halaman. Pengguna harus menekan browser mereka 'reload' tombol untuk memastikan bahwa mereka memiliki infonnation terbaru, dan browser dipaksa untuk berkomunikasi dengan server untuk memeriksa apakah salinan lokal dari sumber daya masih berlaku. Akhirnya. halaman web tidak selalu antarmuka pengguna yang memuaskan. widget Antarmuka didefinisikan untuk HTML terbatas, dan desainer biasanya termasuk applet atau gambar banyak halaman web untuk membuat mereka terlihat dan berfungsi lebih dapat diterima. Ada peningkatan yang konsekuen pada waktu download. 1.4 Tantangan Contoh-contoh dalam Bagian 1.2 dimaksudkan untuk menggambarkan lingkup sistem terdistribusi dan untuk menyarankan isu-isu yang muncul dalam desain mereka. Walaupun sistem terdistribusi dapat ditemukan di mana-mana, desain mereka cukup sederhana dan masih banyak ruang lingkup untuk mengembangkan lebih ambitiolL ', layanan dan aplikasi. Banyak tantangan yang dibahas m bagian ini sudah dipenuhi, tetapi desainer masa depan perlu menyadari dari mereka dan berhati-hati untuk membawa mereka ke dalam account. 1.4.1 Heterogenitas Internet memungkinkan pengguna untuk mengakses layanan dan menjalankan aplikasi lebih dari sebuah koleksi heterogen komputer dan jaringan. Heterogenitas (yaitu, variasi dan perbedaan) berlaku untuk semua mengikuti oflhe: • Jaringan • perangkat keras komputer • sistem operasi • bahasa pemrograman implementasi • hy pengembang Meskipun internet terdiri dari berbagai macam diffcrem jaringan (diilustrasikan pada Gambar 1.1), perbedaan mereka bertopeng dengan fakta bahwa semua komputer yang melekat pada mereka menggunakan protokol Internet untuk berkomunikasi dengan satu sama lain. Untuk examplc, komputer melekat pada sebuah Ethernet memiliki sebuah implementasi dari protokol Intcrnet over Ethernet tersebut. Sedangkan komputer pada semacam jaringan yang berbeda akan membutuhkan sebuah implementasi dari protokol Internet untuk jaringan itu. Bab 3 menjelaskan bagaimana protokol Internct sebuah diimplementasikan melalui berbagai jaringan yang berbeda. Tipe data seperti integer dapat diwakili dengan cara yang berbeda pada berbagai macam perangkat keras misalnya, ada dua alternatif untuk pemesanan byte bilangan bulat. Perbedaan-perbedaan dalam representasi harus ditangani dengan jika pesan tersebut akan dipertukarkan antara program yang berjalan pada hardware yang berbeda. Meskipun tasb mereka dengan benar, dapat diandalkan dan aman. Model dasar memberikan pandangan abstrak hanya karakteristik dari sistem terdistribusi yang karakteristik ketergantungan affectlheir - kebenaran, kehandalan dan keamanan. Kesulitan untuk dan ancaman untuk sistem terdistribusi. Berikut adalah beberapa masalah yang para perancang sistem terdistribusi wajah: Sangat beragam mode pemakaian: Bagian komponen dari sistem tunduk pada variasi luas dalam beban kerja - misalnya, beberapa halaman web yang diakses beberapa juta kali sehari. Beberapa Paris sistem mungkin terputus, atau buruk tersambung beberapa waktu - misalnya saat komputer mobile yang termasuk dalam suatu sistem. Beberapa aplikasi memiliki persyaratan khusus untuk bandwidth komunikasi tinggi dan latency rendah - misalnya, aplikasi multimedia. Cakupan luas dari lingkungan sistem: Sebuah sistem terdistribusi harus mengakomodasi perangkat keras heterogen, sistem operasi dan jaringan. Jaringan mungkin berbeda secara luas dalam kinerja jaringan nirkabel beroperasi di sebagian kecil dari kecepatan jaringan lokal. Sistem skala yang sangat berbeda - mulai dari puluhan komputer untuk jutaan komputer - harus didukung. Masalah internal: Non-disinkronisasi jam, update data yang bertentangan, mode banyak hardware dan kegagalan perangkat lunak yang melibatkan masing-masing komponen sistem. Eksternal ancaman: Serangan terhadap integritas data dan kerahasiaan, penolakan layanan. 2.2 Model Arsitektur Arsitektur sebuah sistem struktur dalam komponen-komponennya secara terpisah ditentukan. Tujuan keseluruhannya adalah untuk memastikan bahwa struktur menang memenuhi tuntutan masa kini dan kemungkinan di atasnya. keprihatinan utama adalah untuk membuat sistem yang handal. dikelola, mudah beradaptasi dan biaya-efektif. Desain arsitektur bangunan memiliki aspek yang sama - itu tidak hanya menentukan penampilan, tetapi juga struktur umum dan gaya arsitektur (gothic, neo-klasik, modem) menyediakan suatu kerangka acuan yang konsisten untuk desain. Pada bagian SIRST, kita harus menjelaskan modds arsitektur utama yang digunakan dalam sistem terdistribusi - gaya arsitektur sistem terdistribusi. Kami membangun model arsitektur kami di seluruh konsep proses dan objek diperkenalkan pada Bab I. modd arsitektur sistem terdistribusi pertama menyederhanakan dan abstrak fungsi masing-masing komponen sistem terdistribusi dan kemudian mempertimbangkan: • penempatan. komponen di sebuah jaringan komputer - berusaha untuk mendefinisikan pola yang berguna untuk distribusi data dan beban kerja; • keterkaitan antara komponen THC - yaitu, peran fungsional mereka dan pola komunikasi antara mereka. Sebuah penyederhanaan awal dicapai dengan mengelompokkan proses sebagai proses server, proses client dan proses peer - proses yang terakhir yang bekerja sama dan berkomunikasi secara simetris untuk melakukan tugas. Klasifikasi ini proses, mengidentifikasi tanggung jawab masing-masing dan karenanya membantu kita untuk menilai beban kerja mereka dan untuk menentukan dampak dari kegagalan di masing-masing. Hasil analisis ini kemudian dapat digunakan untuk menentukan penempatan proses dengan cara yang memenuhi tujuan perfonnance dan keandalan untuk sistem yang dihasilkan. Beberapa lebih sistem dinamis dapat dibangun sebagai variasi pada model client-server: • Kemungkinan bergerak kode dari satu proses yang lain memungkinkan proses untuk mendelegasikan tugas kepada proses lain: misalnya, klien dapat men-download kode dari server dan menjalankannya secara lokal. Objek dan kode yang mengakses mereka dapat dipindahkan untuk mengurangi penundaan mengakses dan meminimalkan lalu lintas komunikasi. • Beberapa sistem terdistribusi yang dirancang untuk memungkinkan komputer dan perangkat mobile lainnya yang akan ditambahkan atau dihapus mulus, yang memungkinkan mereka untuk menemukan yang tersedia: layanan dan untuk menawarkan layanan mereka kepada orang lain. Ada beberapa pola yang banyak digunakan untuk ofwark alokasi dalam sistem terdistribusi yang memiliki dampak penting pada perfonnance dan efektivitas dari sistem yang dihasilkan. Penempatan yang sebenarnya dari proses yang membentuk sebuah sistem yang terdistribusi dalam jaringan komputer juga dipengaruhi oleh isu-isu mendalam kinerja, keamanan kehandalan, dan biaya. Model arsitektur yang dijelaskan di sini hanya dapat memberikan pandangan yang agak sederhana lebih imponant pola distribusi. 2.2.1 Perangkat Lunak lapisan Arsitektur perangkat lunak awalnya jangka pendek sebagaimana dimaksud pada penataan perangkat lunak sebagai lapisan atau modul dalam satu komputer dan baru-baru dalam hal layanan yang ditawarkan dan meminta antara proses yang terletak di komputer yang sama atau berbeda. Proses dan melihat berorientasi pelayanan dapat dinyatakan dalam bentuk lapisan sarvice. Kami memperkenalkan pandangan ini pada Gambar 2.1 dan mengembangkannya dalam meningkatkan rinci dalam Bab 3 sampai 6. Server adalah sebuah proses yang menerima permintaan dari proses lainnya. Sebuah layanan terdistribusi dapat disediakan oleh satu atau lebih proses server, berinteraksi satu sama lain dan dengan proses klien untuk menjaga pandangan seluruh sistem sumber daya yang konsisten layanan. Sebagai contoh, layanan waktu jaringan diimplementasikan di Internet berdasarkan Network Time Protocol (NTP) oleh server proses yang berjalan di host di seluruh Internet yang menyediakan waktu saat ini untuk klien apapun yang memintanya dan menyesuaikan versi mereka waktu saat ini sebagai hasil dari interaksi satu sama lain. Gambar 2.1 memperkenalkan platfonn istilah penting dan middleware, yang kami definisikan sebagai berikut; Platform. Lapisan terendah-tingkat hardware dan software sering disebut sebagai platform untuk sistem terdistribusi dan aplikasi. Lapisan ini tingkat rendah menyediakan layanan untuk lapisan di atas mereka, yang diimplementasikan secara independen di setiap komputer, membawa interface pemrograman sistem sampai ke tingkat yang memfasilitasi komunikasi dan koordinasi antar proses. x86/Windows Intel, Sun cadang / SunDS, Intel x86/So1aris, PowerPClMacOS, Intel x86/Linux adalah contoh utama. Middleware. Middleware didefinisikan dalam Bagian 1.4.1 sebagai lapisan dari perangkat lunak yang tujuannya adalah untuk heterogenitas masker dan untuk menyediakan model pemrograman yang nyaman untuk pemrogram aplikasi. Middleware diwakili oleh proses atau objek dalam satu set komputer yang berinteraksi satu sama lain untuk melaksanakan komunikasi dan dukungan resourcesharing untuk aplikasi terdistribusi. Middlcware prihatin dengan menyediakan blok bangunan yang berguna untuk pembangunan komponen perangkat lunak yang dapat bekerja dengan satu sama lain dalam suatu sistem terdistribusi. Secara khusus, menaikkan tingkat kegiatan komunikasi program aplikasi melalui dukungan dari abstraksi seperti pemanggilan metode terpencil, komunikasi antara kelompok proses, pemberitahuan acara, replikasi data bersama dan transmisi data multimedia secara real time . Komunikasi kelompok diperkenalkan dalam Bab 4 dan dibahas secara rinci dalam Bab 11 dan 14. Event pemberitahuan dijelaskan dalam Bab 5. replikasi Data diskus 14 dalam Bab 14 dan sistem multimedia di Bab 15. Remote prosedur memanggil paket-paket seperti Sun RPC (dijelaskan dalam Chapted) dan dan sistem kelompok komunikasi seperti Isis (Bab 14) berada di antara awal. dan saat ini kasus yang paling banyak dieksploitasi middleware. produk middleware berorientasi objek dan standar termasuk Object Request Common Objek Management Group Broker Arsitektur (Corea), Jawa Remote Object Invocation (RMI), Microsoft Distributed Common Object Model (DCOM) dan ISOIITU-T Reference Model untuk Open Distributed Processing (RM -ODP). Corea dan Jawa RMI dijelaskan dalam Bab 5 dan 17; rincian tentang DCOM dan RM-ODP dapat ditemukan di Redmond [1997] dan Blair dan Stefani [1997]. Middleware juga dapat memberikan layanan bagi program aplikasi menggunakan hy. Mereka adalah layanan infrastruktur, terikat erat dengan model pemrograman middleware terdistribusi yang menyediakan. Sebagai contoh, CORBA menawarkan berbagai layanan yang menyediakan aplikasi dengan fasilitas, yang meliputi penamaan, keamanan, transaksi, penyimpanan persisten dan nOlification acara. Beberapa layanan Corea dibahas dalam Bab 17. layanan THC di lapisan atas Gambar 2.1 adalah layanan domain-spesifik yang memanfaatkan middleware - operasi komunikasi dan layanan sendiri. Keterbatasan middleware; aplikasi terdistribusi Banyak mengandalkan sepenuhnya pada layanan yang diberikan oleh midd1eware tersedia untuk mendukung kebutuhan mereka untuk komunikasi dan berbagi data. Sebagai contoh, sebuah aplikasi yang sesuai dengan model client-server seperti database nama dan alamat bisa mengandalkan middleware yang menyediakan hanya pemanggilan metode remote, Banyak yang telah dicapai dalam menyederhanakan pemrograman sistem terdistribusi melalui pengembangan dukungan middleware, tetapi beberapa aspek keandalan sistem memerlukan dukungan pada level aplikasi. Pertimbangkan transfer besar pesan surat elektronik dari host mail pengirim ke penerima. Pada pandangan frrst ini aplikasi sederhana dari protokol transmisi data TCP (dibahas dalam Bab 3). Tapi mempertimbangkan masalah pengguna yang mencoba untuk mentransfer file yang sangat besar melalui jaringan berpotensi diandalkan. TCP memberikan beberapa deteksi kesalahan dan koreksi, tetapi tidak dapat pulih dari intelTIJptions jaringan utama. Layanan transfer mail menambah satu lagi tingkat toleransi kesalahan, menjaga catatan kemajuan dan melanjutkan transmisi menggunakan koneksi TCP yang baru jika satu istirahat asli. Sebuah kertas klasik oleh Saltzer, Reed dan Clarke [Saltzer dkk. 1984] membuat titik yang sama dan berharga mengenai desain sistem terdistribusi, yang mereka sebut 'akhir untuk mengakhiri argumen' ini. Mengutip pernyataan mereka: Beberapa fungsi komunikasi-terkait dapat dilaksanakan sepenuhnya dan terpercaya hanya dengan pengetahuan dan bantuan dari aplikasi berdiri di titik akhir dari sistem komunikasi. Oleh karena itu, memberikan yang berfungsi sebagai fitur dari sistem komunikasi itu sendiri tidak selalu masuk akal. (Versi lengkap dari fungsi yang disediakan oleh sistem komunikasi kadang-kadang mungkin berguna sebagai perangkat tambahan perfonnance.) Hal ini dapat dilihat bahwa argumen mereka bertentangan dengan pandangan bahwa semua kegiatan komunikasi dapat diabstraksikan jauh dari pemrograman aplikasi oleh pendahuluan lapisan middleware yang tepat. Yang inti dari argumen mereka adalah bahwa behavioor benar dalam program didistribusikan tergantung pada cek, mekanisme koreksi kesalahan dan langkah-langkah keamanan banyak tingkatan al, oCwhich beberapa membutuhkan akses ke data dalam ruang alamat aplikasi. allempt Any perfonn pemeriksaan dalam sistem conununication saja akan menjamin hanya panci atas kebenaran yang diperlukan. The worle yang sama Oleh karena itu mungkin rangkap dua dalam program aplikasi, membuang-buang usaha pemrograman. dan mort penting, menambahkan kompleksitas yang tidak perlu dan melakukan perhitungan berlebihan. Tidak ada ruang untuk detail argumen mereka lebih lanjut di sini, kertas ciled sangat dianjurkan - itu penuh dengan menerangi contoh. Salah satu penulis Ofiginal keranjangnya baru-baru ini menunjukkan lhat manfaat substansial bahwa penggunaan argumen dibawa ke EHI desain. Dia internet ditempatkan di risiko dengan bergerak baru-baru ini rowards yang speciaJizarion layanan jaringan untuk memenuhi kebutuhan aplikasi saat ini [www.reed! . com) 2.2.2 Sistem archrtectures Pembagian tanggung jawab antara komponen sistem (aplikasi, server dan proses lainnya) dan penempatan komponen pada komputer dalam jaringan PTAI mungkin aspek yang paling jelas dari desain sistem terdistribusi. Hal ini impUcations utama bagi (ia performa, kehandalan dan keamanan dari sistem yang dihasilkan Pada bagian SIRST,. Kita garis model arsitektur utama yang ini distribusi responsihilities didasarkan. Dalam sebuah sistem terdistribusi, proses dengan tanggung jawab yang terdefinisi dengan baik berinteraksi dengan masing-masing lain untuk perfonn aktivitas yang berguna (n bagian ini., perhatian kita akan fokus pada placemem proses, iIIustnutd dengan cara Gambar 2.2, menunjukkan disposisi EHI proses (elips) di komputer (kotak abu-abu). Kami menggunakan tenns ' doa 'dan' hasil 'ke label pesan • mereka sama-sama bisa akan dilabeli sebagai' permintaan 'dan' jawaban '. Jenis utama dari model arsitektur yang diilustrasikan pada Gambar 2.5 Gambar 2.2 10 dan dijelaskan di bawah ini. Model ClienHerver Ini adalah arsitektur yang paling sering mati ketika sistem disuibuted dibahas. Ini adalah sejarah yang paling penting dan tetap yang paling banyak digunakan. Gambar 2.2 mengilustrasikan str sederhana \ lCtUfe di klien whicb proses berinteraksi dengan proses server individu dalam komputer host yang terpisah untuk mengakses sumber daya bersama Lhe thai: y mengelola. Server mungkin pada gilirannya menjadi klien dari server lain. sebagai tokoh menunjukkan. Sebagai contoh, server web seringkali merupakan klien server file lokal yang mengelola file di mana halaman web disimpan. server Web dan layanan lntemet sebagian besar lainnya adalah klien dari layanan DNS, yang diterjemahkan Internet Nama Domain ke alamat jaringan. Contoh lain yang berhubungan dengan masalah web search engine, yang memungkinkan pengguna untuk melihat ringkasan dari infonnation tersedia pada halaman web pada situs-situs di internet. Ringkasan ini dibuat oleh program yang disebut web crawler, yang dijalankan di ar backgrouod. mesin pencari situs menggunakan permintaan HTTP untuk mengakses web server di seluruh Internet .. Jadi mesin pencari merupakan sebuah server dan klien: menanggapi pertanyaan dari klien browser dan berjalan web crawler yang bertindak sebagai web server klien ofother. Dalam contoh ini. tugas server (menanggapi kueri pengguna) dan tugas crawler (membuat permintaan ke server web lain) sepenuhnya independen, ada sedikit kebutuhan untuk menyinkronkan mereka dan mereka mungkin ron bersamaan. Bahkan. mesin pencari yang khas biasanya mencakup banyak benang bersamaan eksekusi., beberapa melayani klien dan lain-lain menjalankan web crawler. Dalam Latihan 2.4, pembaca diundang untuk mempertimbangkan masalah sinkronisasi satunya yang tidak muncul untuk mesin pencari concurreDt dari tipe yang diuraikan di sini. Layanan. disediakan oleh multipll "Ibu Layanan. mungkin akan diimplementasikan sebagai proses beberapa server di komputer host terpisah berinteraksi yang diperlukan untuk memberikan pelayanan kepada proses klien (Gambar 2.3). The server mungkin partisi sekumpulan objek yang layanan ini berbasis dan mendistribusikannya antara diri mereka atau mereka mungkin mainwn salinan direplikasi dari mereka di beberapa host. ini dua pilihan yang digambarkan oleh contoh berikut w.. Web memberikan contoh umum data dipartisi dimana setiap server web set mengelola sendiri sumber daya. Seorang pengguna dapat menggunakan browser untuk mengakses sumber daya pada siapapun dari server. Replikasi digunakan untuk meningkatkan kinerja dan ketersediaan dan untuk meningkatkan toleransi kesalahan. Ini menyediakan beberapa ofdata konsisten kopi dalam proses yang berjalan di komputer yang berbeda. Sebagai contoh. web service yang disediakan di altavista.digital.com dipetakan ke beberapa server yang memiliki database IHE direplikasi di memori. Contoh lain dari layanan berdasarkan data direplikasi adalah NLS Matahari (Jaringan Infonnation Service), yang digunakan oleh komputer pada LAN ketika pengguna login Setiap server NIS replika sendiri ofIhe file password berisi nama login ofnsers daftar 'dan dienkripsi password. Bab 14 teknik diskus untuk replikasi secara rinci. Proxy server Lind cache 0 A> eacht adalah toko yang baru saja ohjects dala usect yang lebih dekat dari obyek itu sendiri. Ketika sebuah objek baru diterima di depan komputer itu akan ditambahkan ke toko cache, menggantikan beberapa obyek yang sudah ada jika diperlukan. Ketika suatu objek diperlukan suatu proses klien thecaching tirstchecks layanan cache dan pasokan objek dari sana jika datecopy untuk up •-adalah availahle. Jika tidak, salinan up-to-date felched. Mungkin cache collocated dengan eachclienl atau mereka mungkin terletak di server proxy Ihal Cllrl digunakan bersama oleh beberapa diems. Cache digunakan secara ekstensif dalam praktek. Web browser maimain cache dari halaman web recenlly dikunjungi dan sumber daya web lainnya dalam menjadi sistem berkas lokal klien. menggunakan permintaan HTTP khusus untuk memeriksa dengan server asli yang halaman cache yang up to date sebelum menampilkan Ihem. Web server proxy (Gambar 2.4) menyediakan cache shared web re ... ources untuk mesin klien di sile atau di beberapa situs. Tujuan dari server proxy adalah untuk i.ncrease avaiJability dan kinerja pelayanan dengan mengurangi beban pada wide-area network: dan server web. Proxy server dapat mengambil peran lain, misalnya. mereka dapat digunakan untuk mengakses web seivers remote melalui firewall. Peer toperform Dalam arsitektur ini semua proses memainkan peran yang serupa, berinteraksi kooperatif sebagai pena untuk melakukan aktivitas didistribusikan atau perhitungan tanpa perbezaan antara klien dan server. Dalam model ini. kode di peer proses menjaga konsistensi sumber daya aplikasi-tingkat dan mensinkronkan tindakan application-level bila diperlukan. Gambar 2.5 menunjukkan contoh tiga cara ini, secara umum, proses sebaya dapat interaci satu sama lain, dan pola communicalion akan tergantung pada persyaratan aplikasi. Penghapusan proses server mengurangi delay antar-proses komunikasi untuk akses ke objek lokal. Pertimbangkan sebuah papan tulis didistribusikan '"aplikasi yang memungkinkan pengguna pada beberapa komputer untuk melihat dan memodifikasi interaktif picrure yang dibagi antara mereka (Floyd al er [1997} adalah sebuah contoh.). Ini dapat diimplementasikan sebagai proses aplikasi pada setiap situs yang mengandalkan pada lapisan middleware untuk melakukan notifikasi event dan komunikasi kelompok untuk memberitahu semua appliclltion proses of'changes ke gambar tersebut. ini memberikan respon bener interaktif untuk pengguna objek-objek yang distribuled dari umumnya dapat diperoleh dengan arsitektur berbasis server. 2.2.3 Variasi pada model client-server SeveraJ variasi pada model client-server dapat diturunkan dari pertimbangan faktor-faktor berikut: • penggunaan mobile code dan agen mobile; pengguna • kebutuhan untuk komputer murah dengan sumber daya perangkat keras yang terbatas yang sederhana untuk mengelola; • persyaratan untuk menambah dan menghapus perangkat mobile secara nyaman. Mobile kode. Bab 1 memperkenalkan mobile code. Applcts adalah terkenal dan banyak digunakan contoh kode mobile - pengguna menjalankan browser selecls link ke sebuah applet kode yang disimpan pada web server, kode di-download 10 saya browser dan berjalan di sana.. seperti yang ditunjukkan pada Gambar 2.6. Sebuah keuntungan dari menjalankan kode download lokal adalah bahwa hal itu dapat memberikan respon yang interaktif baik karena dokumen tidak menderita dari keterlambatan atau variabilitas dari bandwidth yang terkait dengan jaringan komunikasi, jasa Mengakses berarti menjalankan kode yang dapat memanggil operasi mereka. Beberapa layanan mungkin sehingga standar yang kita dapat mengaksesnya dengan aplikasi yang sudah ada dan terkenal - Web adalah contoh yang paling umum ini, tetapi bahkan ada, beberapa situs web menggunakan fungsi tidak ditemukan dalam browser standar dan memerlukan download kode tambahan. Kode tambahan mungkin untuk berkomunikasi misalnya dengan server, Pertimbangkan aplikasi yang membutuhkan pengguna lhat harus dijaga sampai lembah dengan perubahan karena mereka terjadi pada sumber infonnation di server. Ini tidak dapat dicapai dengan interactif normal dengan server web, yang selalu diawali dengan klien. Solusinya adalah w menggunakan software tambahan yang beroperasi dengan cara yang sering disebut sebagai model-onc apush di mana: o, Crver bukan inisiat interaksi klien. Untuk cxample, pialang saham mungkin menyediakan layanan yang disesuaikan untuk memberitahukan pelanggan perubahan harga saham, untuk menggunakan layanan ini, setiap pelanggan harus mendownload applet khusus yang menerima update dari server broker, menampilkan mereka untuk pengguna dan mungkin melakukan aUlomatic membeli dan menjual operasi dipicu oleh kondisi yang dibentuk oleh pelanggan dan disimpan secara lokal di komputer pelanggan. Bab I menyebutkan bahwa kode mobile potensi ancaman keamanan terhadap sumber daya lokal di komputer tujuan.. Oleh karena itu browser applet memberikan akses yang terbatas terhadap sumber daya lokal dengan menggunakan skema dibahas dalam Bagian 7.1.1. Mobile agen. Agen mobile adalah program yang berjalan (termasuk kode dan data) yang bergerak dari satu komputer ke komputer lain dalam jaringan melaksanakan tugas atas nama seseorang, seperti mengumpulkan infonnation. akhirnya kembali dengan hasilnya. Sebuah agen mobile dapat membuat banyak pemanggilan 10 sumber daya lokal di setiap lokasi itu dilihat - misalnya mengakses entri database individu. Jika kita bandingkan dengan arsitektur klien statis membuat pemanggilan remote ke beberapa sumber daya, mungkin mentransfer sejumlah besar data, ada pengurangan biaya komunikasi dan waktu melalui penggantian pemanggilan jarak jauh dengan yang lokal. Mobile agen dapat digunakan untuk menginstal dan memelihara software pada Wffiputers dalam organisasi atau untuk membandingkan harga produk dari beberapa vendor dengan mengunjungi situs vendor masing-masing dan melakukan serangkaian operasi database. Sebuah contoh awal dari ide yang sama adalah program worm yang disebut dikembangkan di Xerox PARC (Shoch dan Hupp 1982], yang dirancang untuk menggunakan komputer idle dalam rangka untuk melaksanakan perhitungan intensif. agen Mobile (seperti kode seluler) ancaman keamanan potensial terhadap sumber daya dalam komputer yang mereka kunjungi. Lingkungan Menerima agen mobile harus memutuskan di mana sumber daya lokal itu harus diperbolehkan untuk menggunakan, berdasarkan identitas pengguna Atas nama siapa agen tersebut bertindak - identitas mereka harus disertakan dalam cara yang aman dengan kode dan data dari agen mobile. Selain itu. agen mobile bisa diri mereka _ rentan mereka tidak mungkin dapat menyelesaikan tugas mereka jika mereka menolak akses ke informasi yang mereka butuhkan. atjalan tugas yang dilakukan oleh agen mobile dapat dilakukan dengan cara lain. Sebagai contoh. web crawler yang perlu mengakses sumber daya pada server web thmughollt Internet bekerja cukup berhasil dengan membuat proses pemanggilan remote server ". Untuk rca'ions, yang applicahility agen ponsel mungkin dibatasi. Jaringan komputer. Dalam arsitektur diilustrasikan pada Gambar L.2 aplikasi berjalan di komputer pengguna desktop Jocallo tersebut. sistem operasional dan aplikasi perangkat lunak untuk komputer desktop biasanya memerlukan banyak (menjadi kode aktif dan data yang akan berada pada disk lokal, namun pengelolaan file aplikasi dan pemeliharaan basis software lokal membutuhkan upaya teknis yang cukup dari tikar alam. paling pengguna tidak memenuhi syarat untuk memberikan. Jaringan komputer adalah SpoIlSe untuk masalah ini. Ini download sistem operasi dan aplikasi perangkat lunak apapun needc: d oleh user dari file server remote. Aplikasi dijalankan secara lokal tetapi file tersebut dikelola oleh sebuah file server remote. Jaringan aplikasi seperti web browser juga dapat dijalankan. Karena semua data aplikasi dan kode yang disimpan oleh sebuah file server, pengguna dapat bermigrasi dari satu komputer jaringan ke yang lain. 1be prosesor dan kapasitas memori dari komputer jaringan dapat dibatasi dalam rangka mengurangi biaya. Jika disk disertakan. itu hanya menampung minimal perangkat lunak. Sisa dari disk digunakan sebagai salinan memegang ClUne penyimpanan file software dan data yang baru saja diambil dari server. Pemeliharaan cache tidak memerlukan usaha manual; obyek cache tersebut batal bila versi baru dari file tersebut ditulis pada server yang relevan.

OCR (Concepts and Design2) by George Coloures

The clialt tipis merujuk pada sebuah mal lapisan wftware mendukung antarmuka pengguna berbasis jendela pada komputer yang bersifat lokal untuk pengguna ketika menjalankan program aplikasi pada 8. remote komputer (Gambar 2.7). Arsitektur ini memiliki manajemen yang rendah yang sama dan biaya perangkat keras sebagai skema jaringan komputer, tetapi bukan men-download kode aplikasi ke dalam komputer pengguna, itu n.uts mereka pada menghitung server - komputer kuat yang memiliki kapasitas untuk menjalankan sejumlah besar aplikasi secara bersamaan. Server biasanya akan menghitung komputer multiprosesor atau cluster (lihat Bab 6) menjalankan versi multiprosesor dari suatu sistem operasi seperti UNIX atau Windows NT. Kelemahan utama dari arsitektur klien tipis dalam kegiatan grafis yang sangat interaktif seperti CAD dan pengolahan gambar, di mana penundaan yang dialami oleh pengguna meningkat oleh kebutuhan untuk mentransfer informasi gambar dan vektor antara klien tipis dan proses aplikasi, menimbulkan jaringan baik dan sistem operasi latency. implementasi Thin client: sistem klien Tipis sederhana dalam konsep dan implemenlalion mereka sangat mudah di beberapa lingkungan. Sebagai contoh, kebanyakan varian UNIX termasuk THT: sistem X-II jendela yang dibahas dalam kotak pada halaman berikut. Ada beberapa titik di pipa operasi grafis yang dibutuhkan untuk mendukung antarmuka pengguna grafis di mana batas antara klien dan Bisa server ditarik. X-II menarik batas pada tingkat primitif grafis untuk menggambar garis dan bentuk dan penanganan jendela. The [Citrix produk WinFrame www.citrix.comlis implementasi komersial banyak digunakan konsep thin client yang beroperasi dengan cara yang sama. Produk ini menyediakan proses klien tipis mnning pada varicty luas plaltforms dan mendukung desktop menyediakan akses interaktif untuk aplikasi yang berjalan pada host Windows NT. implementasi lainnya termasuk Tcleporting dan Jaringan Virtual Komputer (VNC) sistem yang dikembangkan di AT & T Laboratories di Cambridge, Inggris [Richardson et al. 1998). VNC menarik batas pada tingkat operasi pada piksel layar dan memelihara konteks grafis untuk pengguna ketika mereka movc antar komputer. Mobile perangkat dan ne1working spontan. Seperti Bab 1 dijelaskan, dunia semakin dihuni oleh perangkat komputasi kecil dan portabel, termasuk laptop, perangkat genggam seperti asisten personal digital (PDA), ponsel dan kamera digital. komputer dpt dipakai seperti jam tangan cerdas, dan perangkat tertanam dalam peralatan sehari-hari seperti mesin cuci. Banyak perangkat ini mampu jaringan nirkabel, dengan rentang metropolitan atau lebih besar (OSM, CDPD), berkisar ratusan meter (WaveLAN), atau beberapa meter (BlueTooth, infra-merah dan HomeRF). Jaringan shorterrange memiliki bandwidth sampai dengan urutan 10 megabit / detik; janji GSM dalam llfder ratusan kilobit / detik. Dengan integrasi yang sesuai ke dalam sistem kita didistribusikan, perangkat ini memberikan dukungan untuk komputasi mobile (lihat Bagian 1.2.3), dimana pengguna membawa perangkat mobile mereka antara lingkungan jaringan dan memanfaatkan layanan lokal dan remote karena mereka melakukannya. Bentuk distribusi yang mengintegrasikan perangkat mobile dan perangkat lainnya ke sebuah jaringan yang diberikan adalah mungkin paling tepat digambarkan oleh jaringan spontan panjang. Istilah ini digunakan untuk mencakup aplikasi yang melibatkan hubungan antara kedua perangkat mobile dan Non mobile untuk jaringan di suatu cara yang lebih informal daripada sampai sekarang mungkin. Perangkat seperti yang tertanam dalam alat <;. Memberikan layanan kepada pengguna dan untuk X • 11 jendela sistem. Jendela II X-sistem [Scheiner dan Gettys 19861 adalah sebuah proses yang mengelola layar dan perangkat input interaktif (keyboard, mouse) dari komputer yang berjalan. X-akan menyediakan sebuah perpustakaan luas prosedur (yang protocof X-II) untuk menampilkan dan memodifikasi objek grafis di windows serta penciptaan dan manipulasi dari jendela mereka sendiri, Sistem X-II disebut sebagai proses window server . Para chents dari server X-II program aplikasi yang user saat ini berinteraksi dengan. Program klien berkomunikasi dengan sen'er tersebut dengan menerapkan operasi dalam protokol 11 X; ini mencakup operasi untuk menggambar objek teks dan grafis di jendela. Klien tidak perlu berada di komputer yang sama sebagai server, karena prosedur server yang selalu dipanggil dengan menggunakan mekanisme RPC. Jendela X-II server Ada kedepan memiliki sifat kunci dari klien tipis. (X-l) membalikkan terminologi client-server. X-11 server mendapatkan namanya dari layanan tampilan grafis yang melengkapi program aplikasi, sedangkan perangkat lunak klien tipis bernama berkenaan dengan penggunaan program aplikasi berjalan pada server menghitung.) perangkat lain di sekitarnya; portabel: perangkat seperti PDA memberikan akses pengguna jasa saya di lokasi sekarang, serta layanan global seperti Web. Bab I memberikan contoh pengguna mengunjungi sebuah organisasi tuan rumah. Sebagai ilustrasi lain jaringan spontan. Gambar 2.8 menunjukkan jaringan nirkabel yang mencakup sebuah suite hotel. Sistem suite hi-fi menyediakan layanan musik, dimana pengguna dapat pipa kombinasi dari pilihan musik ke speaker di kamar tidur atau kamar mandi, atau untuk headset terhubung secara nirkabel. Sistem alarm menyediakan senrice bangun melalui layanan musik. The lVlPC (sebuah televisi dengan 'set-top box') bertindak baik sebagai televisi dan komputer. Menyediakan akses ke Web (melalui gateway internet hotel). termasuk interfa.ce berbasis web untuk semua fasilitas hotel. Ini menyediakan layanan untuk melihat gambar yang pengguna telah disimpan pada kamera atau camcorder. Hal ini juga dapat menyediakan aplikasi favorit pengguna. atas dasar sewa. Gambar ini menunjukkan perangkat yang membawa pengguna ke suite hotel: laptop, kamera digital dan PDA, yang infra merah capabitity • memungkinkan untuk funclion sebagai a. controller universal - sebuah perangkat yang mirip dengan remote control sebuah televisi, tetapi yang dapat digunakan untuk mengontrol berbagai perangkat di sekitar kamar hotel. termasuk pencahayaan dan layanan musik. Sementara beberapa perangkat di hou ini: l seperti printer dan mesin penjual otomatis tidak secara rutin portabel. ini merupakan persyaratan untuk memperkenalkan mereka dengan campur tangan manusia minimal. sambungan mereka ke jaringan dan akses ke layanan jaringan harus dibuat mungkin tanpa pemberitahuan sebelumnya atau tindakan administratif sebelumnya. Fitur kunci dari jaringan spontan adalah: Eary koneksi ke jaringan lokal: Wireless link menghindari kebutuhan untuk kabel instalasi \ ed pra • dan menghindari isu-isu ketidaknyamanan dan kehandalan sekitarnya stop kontak dan soket. Mereka adalah link-satunya komunikasi yang dapat mainlained saat dalam perjalanan (di kereta, pesawat, mobil atau sepeda. Perahu). Adevice dibawa ke dalam suatu lingkungan jaringan baru transparan ulang untuk mendapatkan konektivitas sana: u "cr tidak harus mengetik nama atau alamat dari layanan lokal untuk mencapai integrasi yang mudah dengan layanan lokal:. Perangkat yang menemukan diri mereka dimasukkan ke (dan bergerak antara) jaringan yang ada perangkat menemukan secara otomatis layanan apa yang disediakan di sana, dengan tidak ada tindakan konfigurasi khusus oleh pengguna Pada contoh hotel.. kamera digital tamu menemukan melihat layanan seperti yang dari TV / PC secara otomatis, bahwa tamu bisa mengirim foto yang disimpan Kamera untuk ditampilkan. jaringan spontan menimbulkan beberapa masalah desain signifikan. Pertama, ada tantangan mendukung koneksi nyaman dan integrasi. Sebagai contoh, alamat Internet dan routing algoritma mengasumsikan bahwa komputer terletak pada subnetwork tertentu. jika komputer dipindahkan ke subnet lain tidak dapat lagi diakses dengan alamat Internet yang sama. Pendekatan untuk masalah ini adalah dibahas dalam Bab 3. Masalah-masalah lain muncul bagi pengguna ponsel. Pengguna mungkin mengalami konektivitas terbatas saat mereka melakukan perjalanan, dan sifat spontan connectivit mereka;. menimbulkan masalah keamanan. Terbatas konektivitas: Pengguna tidak selalu terhubung saat mereka bergerak. Misalnya, mereka mungkin sebentar-sebentar terputus dari jaringan nirkabel mereka bepergian pada lrain melalui terowongan. Mereka juga mungkin benar-benar terputus untuk waktu yang lebih lama di daerah di mana konektivitas nirkabel berhenti sama sekali atau bila itu terlalu mahal untuk tetap terhubung. Persoalan di sini adalah bagaimana sistem dapat mendukung pengguna sehingga mereka dapat terus bekerja sambil terputus. Bab 14 membahas topik ini. Keamanan dan privasi: Banyak keamanan dan isu-isu privasi pribadi timbul dalam skenario seperti yang dari tamu hotel. Hotel dan para tamu rentan terhadap serangan keamanan dari tamu atau karyawan hotel yang mencoba koneksi nirkabel dengan cara tanpa pengawasan. Beberapa sistem melacak physieallocations pengguna ketika mereka bergerak di sekitar (seperti sistem yang didasarkan pada lencana aktif ', [Ingin et Tahun 1992.] Dan hal ini dapat mengancam pengguna privasi Akhirnya,. Fasilitas yang memungkinkan pengguna untuk mengakses intranet rumah mereka sementara bergerak dapat mengekspos data yang seharusnya tetap di belakang firewall intmnet, atau mungkin membuka intranet terhadap serangan dari luar. jasa Discovery: jaringan klien spontan memerlukan proses yang berjalan pada perangkat portabel dan peralatan lainnya untuk mengakses layanan pada jaringan yang mereka terhubung. Tapi dalam dunia perangkat yang menjalankan fungsi beragam, bagaimana klien dihubungkan ke layanan yang mereka butuhkan untuk menyelesaikan tugas-tugas yang berguna? Mari kita menjelajahi ini dalam konteks sebuah contoh khusus: pada kembali ke hotel. tamu kita ingin melihat beberapa foto-foto yang mereka telah diambil dengan kamera digital, cetak beberapa dari mereka untuk penggunaan lokal dan mengirimkan pilihan mereka pulang ke rumah secara elektronik. Kamarnya memiliki TV / PC Hotel ini mungkin memiliki layanan digital printer berwarna, atau jika tidak, mungkin memiliki layanan mesin faks. Kita tidak bisa mengharapkan setiap pabrik printer untuk menerapkan persis protokol yang sama untuk klien untuk mengakses layanan pencetakan. Bahkan jika itu terjadi. klien seringkali bisa dibuat beradaptasi, sebagai contoh kita dimaksudkan untuk indicale: klien kamera digital akan menampilkan foto-foto di TV lokal atau kirim ke mesin faks hotel. Apa yang diperlukan adalah sarana bagi klien untuk menemukan busur layanan apa yang tersedia di jaringan yang mereka terhubung dan untuk menyelidiki sifat mereka. Tujuan dari layanan penemuan adalah untuk menerima dan menyimpan rincian pelayanan ~ yang tersedia pada jaringan dan untuk menanggapi pertanyaan dari klien tentang mereka. Lebih tepatnya, sebuah layanan penemuan menawarkan dua antarmuka: • Sebuah layanan pendaftaran menerima permintaan pendaftaran dari server dan penemuan rincian yang mengandung dalam database penemuan layanan tentang layanan yang tersedia saat ini. • Sebuah layanan pencarian menerima pertanyaan tentang layanan yang tersedia dan pencarian basis data untuk layanan terdaftar yang cocok dengan query. Hasilnya kembali termasuk rincian yang cukup untuk memungkinkan klien untuk memilih antara beberapa layanan serupa berdasarkan atribut mereka dan untuk membuat sambungan ke satu atau lebih dari mereka. Kembali ke contoh kita, sebuah layanan penemuan di hotel termasuk rincian cetak dan melihat layanan yang tersedia di hotel, dengan rincian seperti nomor kamar di mana tampilan atau printer terletak, kualitas (resolusi) dari perangkat, pencitraan model perangkat menerima, kemampuan warna dan sebagainya. Kamera digital tamu query penemuan layanan untuk pencetakan dan layanan melihat, proses daftar yang dihasilkan karena kedekatannya ke ruang di mana ia berada dan untuk kompatibilitas dengan model pencitraan dan menawarkan pengguna menu perangkat yang sesuai. Pengguna memilih TV / PC di ruangan atau printer dan kiriman beberapa gambar untuk itu. gambar lain mungkin dikirim ke teman dan keluarga sebagai auachments email. Bab 9 termasuk melihat lebih dekat pada layanan penemuan. 2.2.4 Interface dan objek Set fungsi yang tersedia untuk doa dalam suatu proses (apakah itu server atau proses peer) ditentukan oleh satu atau lebih definisi antarmuka. definisi Interface adalah sepenuhnya dijelaskan dalam Bab 5, namun konsep tersebut akan dikenal oleh mereka yang sudah fasih dengan bahasa seperti Modula, C + + atau Java. Dalam fonn dasar arsitektur client-server. setiap proses server dipandang sebagai satu kesatuan dengan antarmuka tetap mendefinisikan fungsi yang dapat dipanggil di dalamnya. Dalam bahasa berorientasi objek seperti C + + dan Java, dengan dukungan tambahan yang sesuai, proses terdistribusi dapat dibangun secara lebih berorientasi objek. Banyak objek dapat dirumuskan dalam proses server atau peer, dan referensi kepada mereka yang diberikan kepada proses lain sehingga metode mereka dapat diakses oleh pemanggilan remote. Ini adalah pendekatan yang diadopsi oleh CORBA dan Java dengan (RMI) mekanisme pemanggilan metode remole nya. Dalam model ini, jumlah dan jenis (dalam bahasa yang mendukung mobile code seperti Java) objek yang diselenggarakan oleh setiap proses dapat bervariasi sebagai aktivitas sistem membutuhkan, dan dalam beberapa implementasi lokasi objek mungkin abl) berubah. Apakah kita mengadopsi arsitektur client-server statis atau model objcctoriented lebih dinamis diuraikan dalam paragraf sebelumnya, pembagian tanggung jawab antara proses dan antara komputer tetap merupakan aspek penting dari desain. Dalam model arsitektur tradisional, tanggung jawab statis dialokasikan (server file, misalnya, bertanggung jawab hanya untuk file, bukan untuk halaman web, proxy atau jenis lain objek). Tetapi dalam layanan berorientasi objek model baru, dan dalam beberapa jenis ~ es la baru objek. bisa instantiated dan segera tersedia untuk iovocation. 2.2.5 Desain persyaratan untuk arsitektur terdistribusi Faktor-faktor motivasi distribusi benda-benda dan proses dalam sistem terdistribusi banyak dan signifikansi mereka considerahle. Sharing pertama kali dicapai dalam sistem time sharing tahun 1960-an dengan penggunaan file bersama. Manfaat berbagi dengan cepat diakui dan dimanfaatkan dalam sistem operasi multi-user seperti dan multi-user sistem database, seperti Oracle untuk mengaktifkan procc, SCS untuk berbagi sumber daya sistem dan perangkat (kapasitas penyimpanan file, printer, audio dan video stream) dan aplikasi proses untuk berbagi objek aplikasi Kedatangan daya komputasi murah dalam bentuk chip mikroprosesor menghilangkan kebutuhan untuk berbagi prosesor pusat, dan ketersediaan jaringan komputer mcdiumperformance dan kebutuhan melanjutkan untuk berbagi sumber daya perangkat keras yang relatif mahal seperti printer dan penyimpanan disk menyebabkan pengembangan sistem terdistribusi pada tahun 1970 dan 1980-an. Hari ini, berbagi sumber daya yang diambil untuk diberikan. Tapi efektif berbagi data dalam skala besar masih merupakan tantangan besar dengan mengubah data (dan paling data perubahan dengan waktu), maka possihility update muncul bersamaan dan saling bertentangan. Kontrol update ofconcurrent dalam data bersama adalah subyek dari Bab 12 dan 13. Kinerja masalah. Tantangan yang timbul dari distribusi sumber daya memperpanjang melampaui kebutuhan untuk pengelolaan update bersamaan. Kinerja isu yang timbul dari pengolahan terbatas dan kapasitas komunikasi komputer dan jaringan dianggap bawah subpos sebagai berikut: Responsiveness: Pengguna aplikasi interaktif membutuhkan respon yang cepat dan konsisten untuk interaksi, tetapi program client sering perlu untuk mengakses sumber daya bersama. Ketika layanan remote terlibat, kecepatan respon dihasilkan ditentukan tidak hanya oleh beban dan kinerja server dan jaringan, tetapi juga oleh keterlambatan dalam komponen software alilhe terlibat - client dan server operasi komunikasi sistem 'dan middleware jasa (doa dukungan terpencil, untuk contoh-contoh serta kode proses yang mengimplementasikan layanan tersebut. Di samping itu, transfer data antara proses dan switching terkait kontrol relatif lambat, bahkan ketika proses berada di komputer yang sama. Untuk mencapai waktu respon interaktif yang baik, sistem harus terdiri dari lapisan perangkat lunak relatif sedikit, dan jumlah data yang ditransfer antara client dan server harus kecil. Masalah-masalah ini ditunjukkan oleh kinerja klien web-bmwsing. Mana respon tercepat dicapai ketika mengakses halaman secara lokal cache dan gambar karena dimiliki oleh aplikasi client. halaman teks Remote juga diakses cukup cepat karena mereka kecil, tapi gambar grafis dikenakan penundaan lebih lama karena volume data yang terlibat. Throughput: Ukuran tradisional kinerja untuk sistem komputer adalah throughput - tingkat di mana kerja komputasi dilakukan. Kami tertarik pada kemampuan sistem terdistribusi untuk melakukan pekerjaan untuk pengguna AJL nya. Hal ini dipengaruhi oleh kecepatan pemrosesan di klien dan server dan dengan kecepatan transfer data. Data yang terletak di a. Remote server harus dipindahkan dari proses server untuk proses klien, passmg melalui lapisan beberapa software di kedua komputer. Throughput dari lapisan perangkat lunak intervensi ini penting, karena wen seperti yang dilakukan oleh jaringan. Menyeimbangkan beban komputasi: Salah satu tujuan dari sistem terdistribusi adalah untuk memungkinkan aplikasi dan layanan untuk melanjutkan proses secara bersamaan tanpa bersaing untuk sumber daya yang sama dan untuk mengeksploitasi sumber daya komputasi yang tersedia (prosesor, memori dan kapasitas jaringan). Sebagai contoh, kemampuan untuk menjalankan applet pada komputer klien menghilangkan beban dari server web, memungkinkan untuk memberikan layanan yang lebih baik. Sebuah contoh yang lebih penting adalah dalam penggunaan beberapa komputer ke host layanan tunggal. Hal ini diperlukan, misalnya, oleh beberapa web server load berat (mesin pencari, situs komersial besar). Ini mengeksploitasi oflbe fasilitas DI "'S nama domain layanan pencarian kembali salah satu dari alamat host beberapa nama domain tunggal (lihat Bagian 9.2.3). Dalam beberapa kasus, load balancing mungkin melibatkan bergerak sebagian pekerjaan yang telah diselesaikan sebagai beban pada host berubah. ini panggilan untuk sebuah sistem yang dapat mendukung gerakan menjalankan proses antar komputer. Kualitas layanan. Setelah pengguna disediakan dengan fungsi yang mereka butuhkan dari sllch jasa sebagai layanan file dalam sistem terdistribusi, kita dapat melanjutkan untuk bertanya tentang kualitas layanan yang disediakan. Sifat-sifat non-fungsional utama dari sistem yang mempengaruhi kualitas pelayanan yang dialami oleh klien dan pengguna kehandalan, keamanan dan perfonnance. Beradaptasi untuk memenuhi konfigurasi sistem berubah dan ketersediaan sumber daya baru-baru ini telah diakui sebagai aspek penting lebih lanjut dari kualitas layanan. Binnan telah lama berpendapat akan pentingnya aspek-aspek kualitas dan bukunya [Binnan 1996] memberikan beberapa perspektif yang menarik:. dampak mereka pada perancangan sistem. Kehandalan dan keamanan sangat penting dalam desain sistem komputer yang paling. Mereka sangat berhubungan dengan dua model dasar kita: model kegagalan dan model keamanan, diperkenalkan pada Bagian 2.3.2 dan 2.3.3. Aspek perfonnance kualitas pelayanan yang hingga saat ini didefinisikan dalam tenns respon dan throughput komputasi, tetapi baru-baru ini telah didefinisikan kembali teons kemampuan untuk memenuhi jaminan ketepatan waktu seperti dijelaskan pada paragraf berikut. Dengan definisi baik, aspek kinerja sistem terdistribusi sangat terkait dengan model interaksi didefinisikan dalam Bagian 2.3.1. Ketiga model ini fundamental adalah poin acuan penting dalam buku ini Beberapa aplikasi menangani data waktu kritis - aliran data yang diperlukan untuk diproses atau ditransfer dari satu proses ke yang lain dengan tingkat bunga tetap. Misalnya layanan film mungkin terdiri dari sebuah program klien yang mengambil suatu mm dari server video dan menyajikannya di layar pengguna. Untuk hasil yang memuaskan frame berturut video perlu ditampilkan kepada pengguna dalam beberapa batas waktu yang ditentukan. Bahkan, QoS singkatan efektif telah disita untuk merujuk pada kemampuan sistem untuk memenuhi tenggat waktu tersebut. Prestasi Its tergantung pada ketersediaan ofthe komputasi yang diperlukan dan sumber daya jaringan pada waktu yang tepat. Hal ini berarti kebutuhan bagi sistem untuk menyediakan komputasi dijamin dan sumber daya komunikasi yang cukup untuk memungkinkan aplikasi untuk menyelesaikan setiap tugas tepat waktu (misalnya, tugas menampilkan frame dari video). Jaringan umum digunakan saat ini, misalnya untuk menelusuri Web, mungkin memiliki karakteristik perfonnance cukup bagus, tetapi ketika mereka sangatlah bias kinerja mereka memburuk secara signifikan - sama sekali tidak dapat mereka dikatakan untuk memberikan kualitas layanan. QoS berlaku untuk operasi sistem serta jaringan. Setiap sumber daya yang penting harus dipesan oleh lhat aplikasi membutuhkan QoS dan harus ada sumber daya manajer yang menyediakan jaminan. Reservasi permintaan yang tidak bisa dipenuhi ditolak. Masalah-masalah akan dibahas lebih lanjut di Bab 15. . Penggunaan caching dan replikasi masalah kinerja yang dijabarkan diatas sering muncul untuk dia kendala utama terhadap penyebaran yang berhasil sistem distrihuted, tapi banyak kemajuan telah dibuat dalam desain sistem yang mengatasi mereka dengan usc replikasi data dan caching. Bagian 2.2.2 cache diperkenalkan dan web proxy serven "tanpa mendiskusikan bagaimana salinan cache sumber daya dapat disimpan sampai dengan tanggal ketika sumber daya di server diperbarui. Berbagai protocob konsistensi cache yang berbeda digunakan untuk memenuhi berbagai aplikasi misalnya, Bab Rgives protokol yang digunakan oleh dua desain file server yang berbeda Kami sekarang garis besar protokol web-cache yaitu panci dari protokol HTTP, yang dijelaskan dalam Bagian 4.4 protokol Web-cache:.. Kedua browser weh dan tanggapan cache proxy server untuk permintaan klien untuk weh server, Ada kedepan permintaan klien dapat dipenuhi oleh respon cache oleh browser atau server proxy antara dan web server Protokol konsistensi cache bisa. dikonfigurasi untuk menyediakan browser dengan segar (cukup up to date) salinan sumber daya yang diselenggarakan hy server web Tapi,. 10 memungkinkan untuk kinerja, ketersediaan dan operasi terputus kondisi kesegaran bisa santai. Sebuah browser atau proxy dapat memvalidasi respon cache dengan memeriksa dengan server web asli untuk melihat apakah masih up date w. Browser dan memvalidasi respon proxy-cache ketika klien meminta sumber daya yang sesuai. Tapi mereka tidak perlu perfonn validasi jika respon cache cukup segar. Meskipun web server tahu kapan sebuah rcsource diperbarui, tidak memberitahu browser dan proxy dengan cache - untuk melakukan itu web server THC perlu mencatat hrowsers tertarik dan proxy untuk makan: h sumber dayanya, Untuk mengaktifkan browser dan proxy untuk menentukan apakah respons mereka disimpan sudah basi, web server menetapkan waktu berakhirnya perkiraan untuk sumber daya mereka, misalnya diperkirakan dari terakhir kali mereka wen: diperbarui. Waktu eApiry dapat menyesatkan, karena sumber daya web dapat diperbarui setiap saat. Setiap kali web server jawaban atas permintaan, yang afthe rcsource berakhirnya waktu dan waktu saat ini pada server yang melekat respon. Browser dan proxy menyimpan timt berakhirnya: dan waktu server bersama dengan respon cache. Hal ini memungkinkan browser atau proxy menerima permintaan masa depan untuk menghitung apakah respon cache mungkin akan basi. Ini menghitung apakah respon cache sudah basi dengan membandingkan usia dengan waktu kadaluwarsa. Ini adalah respon adalah jumlah waktu respon telah cache dan waktu server. Perhatikan bahwa perhitungan ini tidak tergantung pada jam komputer di web server dan browser atau proxy setuju dengan satu sama lain. Ketergantungan masalah 0 Ketergantungan merupakan persyaratan dalam domain aplikasi. Hal ini penting tidak hanya dalam activilies komando dan kontrol, di mana kehidupan dan anggota tubuh mungkin wen dipertaruhkan, tetapi juga di banyak aplikasi komersial. termasuk domain berkembang pesat perdagangan Intemet, di mana keamanan keuangan dan kesehatan peserta tergantung pada keandalan sistem yang mereka beroperasi. Pada Bagian 2.1, kita mendefinisikan keandalan sistem komputer sebagai kebenaran, toleransi andfault keamanan. Di sini kita membahas dampak arsitektur kebutuhan untuk keamanan dan toleransi kesalahan, meninggalkan uescription teknik yang relevan untuk mencapai mereka untuk kemudian dalam buku ini. Pengembangan teknik untuk memeriksa atau memastikan. Dia kebenaran program didistribusikan dan bersamaan! Adalah subjek penelitian saat ini dan baru-baru ini banyak. Meskipun beberapa hasil yang menjanjikan telah dicapai. sedikit jika ada dari mereka belum cukup matang untuk ditempatkan di aplikasi praktis. Toleransi kesalahan: aplikasi diandalkan harus terus berfungsi dengan benar di hadapan kesalahan hardware, software dan jaringan. Keandalan dicapai melalui redundansi - penyediaan sumber daya yang beragam, sehingga bahwa perangkat lunak sistem dan aplikasi dapat mengkonfigurasi ulang dan terus melaksanakan tugasnya di hadapan kesalahan. Redundansi mahal, dan ada batas-batas sejauh mana itu dapat digunakan, kemudian juga batas 10 derajat toleransi kesalahan yang dapat dicapai. Pada tingkat arsitektur, redundansi memerlukan penggunaan beberapa komputer di mana setiap proses komponen sistem dapat menjalankan dan beberapa jalur komunikasi melalui pesan mana yang dapat ditransmisikan. Data dan proses kemudian dapat direplikasi di mana pun dibutuhkan untuk memberikan yang dibutuhkan le "el toleransi kesalahan Bentuk umum redundansi adalah menyediakan beberapa replika sebuah item data pada komputer yang berbeda, asalkan salah satu