TUGAS SOFT SKILL
Arya saputra(50407166)
Ari wibowo(50407143)
Aristianto(50407154)
Herdi Yudha Yusuf(50407417)
Imam Nurhadi(50407445)
Reza Adrian(50407708)
Fundamental Challenges in Mobile Computing
M. Satyanarayanan
School of Computer Science
Carnegie Mellon University
Abstract
Tulisan ini merupakan jawaban atas pertanyaan: "Apa yang unik dan konseptual berbeda tentang komputasi mobile? "dimulai Makalah ini dengan menggambarkan satu set kendala intrinsik ke ponsel komputasi, dan memeriksa dampak dari kendala pada desain sistem terdistribusi. Selanjutnya, merangkum hasil kunci dari Coda dan sistem Odyssey. Akhirnya, menggambarkan Penelitian peluang dalam lima topik penting yang berkaitan dengan komputasi mobile: metrik caching, semantik callback dan validator, sumber daya pencabutan, analisis adaptasi, dan global estimasi dari pengamatan lokal.
1. Pengantar
Apa yang benar-benar berbeda tentang komputasi mobile? The komputer lebih kecil dan bit perjalanan dengan wireless agak dari Ethernet. Bagaimana ini mungkin ada bedanya?
Isn'ta sistem mobile hanya kasus khusus dari didistribusikan sistem? Apakah ada masalah baru dan mendalam untuk menjadi diselidiki, atau mobile computing hanya mode terbaru?
Tulisan ini adalah upaya saya untuk menjawab pertanyaan-pertanyaan. The kertas dalam tiga bagian: karakterisasi dari esensi mobile computing, sebuah ringkasan singkat dari hasil yang diperoleh oleh saya penelitian kelompok dalam konteks Coda dan Odyssey sistem, dan tur berpemandu topik penelitian subur menunggu penyelidikan. Pikirkan kertas ini sebagai laporan dari depan oleh pelaksana sistem informasi yang mobile untuk ilmuwan komputer lebih teoritis-miring.
1.1. KendalaMobilitas Mobile komputasi dicirikan oleh empat kendala:
• Elemen mobile miskin sumber daya relatif terhadap statis elemen. Untuk biaya tertentu dan tingkat teknologi, pertimbangan berat, kekuasaan, ukuran dan ergonomi akan tepat penalti di komputasi seperti kecepatan prosesor, ukuran memory sumber daya, dan kapasitas disk. Sementara unsur bergerak akan meningkatkan kemampuan mutlak, mereka akan selalu miskin sumber daya relatif terhadap elemen statis.
(AFMC) dan ARPA bawah F196828 nomor kontrak-93-C-0193. Dukungan tambahan disediakan oleh IBM Corp dan Intel Corp pandangan dan kesimpulan yang terdapat di sini adalah dari penulis dan harus tidak diartikan sebagai selalu mewakili kebijakan resmi atau dukungan, baik tersurat maupun tersirat, dari AFMC, ARPA, IBM, Intel, CMU, atau Pemerintah U. S.
• Mobilitas secara inheren berbahaya.
Seorang pialang saham Wall Street lebih mungkin dirampok di jalan-jalan Manhattan dan memiliki nya laptop dicuri daripada memiliki workstation-nya dalam kantor terkunci secara fisik ditumbangkan. Selain masalah keamanan, komputer portabel yang lebih rentan terhadap kerugian atau kerusakan.
• Konektivitas Mobile sangat bervariasi di kinerja dan kehandalan. Beberapa bangunan mungkin menawarkan handal, bandwidth tinggi konektivitas nirkabel sementara yang lain mungkin hanya menawarkan konektivitas bandwidth rendah. Outdoor, mobile klien mungkin harus mengandalkan bandwidth rendah nirkabel jaringan dengan kesenjangan dalam cakupan.
• Elemen Mobile bergantung pada sumber energi terbatas. Sementara teknologi baterai niscaya akan meningkatkan dari waktu ke waktu, kebutuhan untuk peka terhadap kekuasaan konsumsi tidak akan berkurang. Kepedulian untuk kekuasaan rentang tingkat konsumsi banyak harus hardware dan perangkat lunak untuk sepenuhnya efektif.
Kendala-kendala ini tidak artefak teknologi saat ini, tetapi intrinsik untuk mobilitas. Bersama-sama, mereka menyulitkan desain sistem informasi mobile dan mengharuskan kita untuk memikirkan kembali pendekatan tradisional untuk mengakses informasi.
1.2. Kebutuhan untuk Adaptasi
Mobilitas memperburuk ketegangan antara otonomi dan saling ketergantungan yang merupakan karakteristik dari semua didistribusikan sistem. Kemiskinan relatif sumberdaya unsur bergerak serta kepercayaan mereka lebih rendah dan ketahanan berpendapat untuk
ketergantungan pada server statis. Namun kebutuhan untuk mengatasi diandalkan dan jaringan rendah kinerja, serta perlu sensitif terhadap konsumsi daya berpendapat diri ketergantungan. Setiap pendekatan yang layak untuk komputasi mobile harus mogok keseimbangan antara kekhawatiran ini bersaing. Keseimbangan ini tidak bisa menjadi satu statis; sebagai keadaan ponsel mengubah klien, harus bereaksi dan dinamis yang mengalihkan tanggung jawab klien dan server. Dengan kata lain, mobile klien harus adaptif.
1.3. Taksonomi Strategi Adaptasi
Rentang strategi untuk adaptasi dibatasi oleh dua ekstrim, seperti yang ditunjukkan pada Gambar 1. Pada satu ekstrim, adaptasi adalah sepenuhnya tanggung jawab individu
aplikasi. Sementara ini laissez-faire menghindari pendekatan kebutuhan untuk dukungan sistem, itu tidak memiliki arbiter sentral mengatasi tuntutan dari berbagai sumber daya yang tidak kompatibel aplikasi dan untuk menegakkan batas pada penggunaan sumber daya. Ini juga membuat aplikasi lebih sulit untuk menulis, dan gagal amortisasi biaya pengembangan dukungan untuk adaptasi.
Ganbar 1: Range of Adaptation Strategies
Ekstrim lainnya aplikasi-transparan adaptasi tempat seluruh tanggung jawab untuk adaptasi pada sistem. Pendekatan ini menarik karena mundur kompatibel dengan aplikasi yang ada: mereka terus bekerja ketika mobile tanpa modifikasi apapun. Sistem menyediakan focal point untuk arbitrase sumber daya dan kontrol. Kelemahan dari pendekatan ini adalah bahwa mungkin ada
menjadi situasi di mana adaptasi yang dilakukan oleh sistem tidak memadai atau bahkan kontraproduktif. Di antara dua ekstrim terletak sebuah spektrum kemungkinan bahwa kita secara kolektif disebut sebagai aplikasi-aware adaptasi. Dengan mendukung kerjasama kemitraan antara aplikasi dan sistem, pendekatan ini memungkinkan aplikasi untuk menentukan cara terbaik untuk menyesuaikan diri, tetapi menjaga kemampuan sistem untuk memantau sumber daya dan menegakkan keputusan alokasi.
1.4. Model Client-Server Extended
Cara lain untuk menggolongkan dampak mobile kendala komputasi adalah untuk menguji pengaruh mereka pada klasik client-server model. Dalam model ini, sejumlah kecil
situs server terpercaya merupakan rumah sejati data. Efisien dan akses aman untuk data ini adalah mungkin dari jauh lebih besar jumlah situs klien tidak dipercaya. Teknik seperti caching dan membaca-depan dapat digunakan untuk menyediakan kinerja yang baik, sementara end-to-end otentikasi dan transmisi terenkripsi dapat digunakan untuk menjaga keamanan. Model ini telah terbukti sangat berharga untuk skalabilitas \ [16]. Akibatnya, model client-server terurai sebuah sistem terdistribusi besar menjadi sebuah inti kecil bahwa perubahan relatif lambat, dan jauh lebih besar dan kurang statis pinggiran klien.Dari perspektif keamanan dan sistem administrasi, skala sistem tampaknya bahwa inti. Tapi dari perspektif kinerja dan ketersediaan, pengguna di pinggiran menerima layanan hampir mandiri.
Gambar 2: Temporary Blurring of Roles
Mengatasi kendala mobilitas mengharuskan kita memikirkan kembali model ini. Perbedaan antara klien dan server mungkin harus sementara kabur, yang mengakibatkan diperpanjang client-server model ditunjukkan pada Gambar 2. The keterbatasan sumber daya klien mungkin memerlukan tertentu operasi biasanya dilakukan pada klien untuk kadang-kadang menjadi
dilakukan pada server yang kaya sumber alam. Sebaliknya, kebutuhan untuk mengatasi dengan konektivitas pasti memerlukan klien untuk kadang-kadang meniru fungsi server. Ini adalah, dari
Tentu saja, penyimpangan jangka pendek dari server-klien klasik model untuk tujuan kinerja dan ketersediaan. Dari perspektif jangka panjang administrasi sistem dan keamanan, peran server dan klien tetap tidak berubah.
2. Ringkasan Coda dan Hasil Odyssey Kami telah mengeksplorasi aplikasi-transparan
adaptasi sejak sekitar tahun 1990. Kendaraan penelitian kami telah yang Coda File System, keturunan dari AFS \ [2]. Coda telah telah digunakan aktif selama lima tahun, dan terbukti menjadi berharga testbed \ [13]. Coda klien sedang digunakan reguler selama
berbagai jaringan seperti 10 / Ethernet s Mb, 2 Mb / s radio, dan 9600 baud modem.
Sejak kontribusi penelitian dari Coda sudah telah banyak didokumentasikan dalam literatur, kami hanya memberikan ringkasan tingkat tinggi hasil kunci di sini:
Terputus operasi
Coda telah menunjukkan bahwa operasi terputus adalah layak, efektif, dan dapat digunakan dalam Unix didistribusikan sistem berkas \ [3, 4, 17]. Kunci mechanims untuk
operasi terputus pendukung termasuk penimbunan (manajemen user-dibantu cache), update penebangan dengan optimasi luas sementara terputus, dan reintegrasi pada rekoneksi.
Optimis replikasi
Coda adalah salah satu sistem paling awal untuk menunjukkan bahwa strategi replika optimis kontrol dapat digunakan untuk komputasi mobile serius dan praktis \ [6]. Ini
menggabungkan beberapa mekanisme baru untuk membuat ini Pendekatan yang layak. Ini termasuk direktori log berbasis resolusi \ [5], resolusi file aplikasi-spesifik \ [7],
dan mekanisme untuk deteksi konflik, penahanan dan manual perbaikan.
Dukungan untuk konektivitas lemah
Coda telah menunjukkan bahwa konektivitas lemah dapat dimanfaatkan untuk mengurangi keterbatasan terputus operasi \ [12]. Mekanisme yang diperlukan untuk mencapai ini termasuk protokol transport adaptif, validasi cepat mekanisme cache, tetesan reintegrasi mekanisme untuk update menyebarkan, dan model berbasis cache miss penanganan untuk kegunaan.
Isolasi hanya transaksi
Dalam konteks Coda, sebuah abstraksi baru yang disebut transaksi isolasi-satunya telah dikembangkan untuk mengatasi dengan deteksi dan penanganan konflik baca-tulis
terputus selama operasi \ [9]. Abstraksi ini selektif menggabungkan konsep dari database transaksi, sambil membuat tuntutan minimal miskin sumber daya mobile klien dan melestarikan ke atas kompatibilitas dengan aplikasi Unix.
Server replikasi
Coda telah menunjukkan bagaimana replikasi server dapat digunakan untuk
melengkapi operasi terputus \ [15]. Meskipun ini tidak relevan dengan mobilitas, itu adalah
Hasil penting dalam sistem terdistribusi karena menjelaskan hubungan antara kelas (yaitu,
server) replika dan replika kedua-kelas (yaitu, klien cache). Ini juga merupakan salah satu yang pertama demonstrasi replikasi optimis diterapkan pada sistem terdistribusi dengan model client-server.
Baru-baru ini, kami mulai eksplorasi aplikasi sadar adaptasi dalam Odyssey, platform untuk mobile komputasi. Sebuah prototipe awal Odyssey telah dibangun \ [14, 18], dan prototipe yang lebih lengkap di bawah pembangunan. Bukti awal menjanjikan, namun jauh terlalu dini untuk hasil yang pasti.
3. Topik subur Eksplorasi
Kita sekarang beralih ke pembahasan penelitian yang menjanjikan topik dalam komputasi mobile. Sifatnya, bagian ini kertas sangat spekulatif dan akan menaikkan jauh lebih pertanyaan daripada jawaban. Selanjutnya, ini adalah daftar selektif: itu tentunya tidak dimaksudkan menjadi lengkap. Sebaliknya, tujuan saya adalah untuk memberikan pembaca sekilas menggoda dari masalah kaya ruang didefinisikan oleh komputasi mobile. Dalam memilih lima topik yang dibahas di bawah ini, saya telah diikuti dua pedoman. Pertama, masalah ini lebih mungkin diselesaikan oleh kekakuan dan analisis dibandingkan dengan implementasi dan pengalaman. Kedua, masing-masing masalah nyata, bukan buat. Baik solusi dan wawasan untuk masalah ini akan sangat berdampak pada mobile sistem komputasi masa depan. Setiap topik disajikan dalam dua bagian: sebuah diskusi singkat yang memaparkan ruang masalah topik, diikuti dengan contoh pertanyaan terbuka yang berkaitan dengan itu. Sekali lagi, saya bertujuan dalam mengajukan pertanyaan-pertanyaan ini tidak akan lengkap tetapi menawarkan makanan untuk berpikir.
3.1. Caching Metrik
Caching memainkan peran kunci dalam komputasi mobile karena kemampuannya untuk mengurangi kinerja dan ketersediaan keterbatasan lemah-terhubung dan terputus operasi. Namun mengevaluasi strategi alternatif untuk caching komputasi mobile bermasalah.
Hari ini, satu-satunya metrik kualitas cache adalah miss rasio. Asumsi yang mendasari metrik ini adalah bahwa cache semua miss setara (yaitu, semua cache miss yang tepat kira-kira hukuman yang sama dari pengguna). Asumsi ini berlaku ketika cache dan salinan primer sangat terhubung, karena hukuman kinerja yang dihasilkan dari cache lewatkan adalah kecil dan, untuk pendekatan pertama, independen dari panjang file. Tetapi asumsi tersebut tidak mungkin yang akan berlaku selama terputus atau lemah-tersambung operasi. Rasio miss juga gagal untuk memperhitungkan waktu merindukan. Sebagai contoh, pengguna dapat bereaksi secara berbeda terhadap suatu cache miss yang terjadi dalam beberapa menit pertama pemutusan dari salah satu yang terjadi di dekat akhir pemutusan. Sebagai contoh lain, periodik spin- down disk untuk menghemat daya pada komputer mobile membuatnya murah ke layanan sejumlah kesalahan halaman jika mereka terkumpul bersama daripada jika mereka banyak spasi. Untuk menjadi berguna, metrik caching baru harus memenuhi dua kriteria penting. Pertama, mereka harus konsisten dengan kualitatif persepsi kinerja dan ketersediaan dialami oleh pengguna dalam komputasi mobile. Kedua, mereka harus murah dan mudah untuk memantau. Tantangannya adalah untuk mengembangkan metrik tersebut dan menunjukkan penerapan mereka mobile computing. Kerja awal menuju akhir ini sedang dilakukan oleh Ebling \ [1].
3.1.1. Beberapa Pertanyaan Terbuka
• Apakah yang dimaksud dengan set yang tepat metrik caching untuk mobile computing?
• Dalam keadaan apa yang digunakan masing-masing metrik?
• Bagaimana seseorang efisien memantau metrik ini?
• Apa implikasi dari alternatif ini metrik untuk algoritma caching?
3.2. Callback semantik dan Validator Melestarikan koherensi cache dalam kondisi lemah
konektivitas bisa mahal. Komunikasi Besar latency meningkatkan biaya validasi objek cache. Intermittent kegagalan meningkatkan frekuensi validasi, karena harus dilakukan setiap komunikasi waktu dipulihkan. Pendekatan malas yang hanya memvalidasi permintaan bisa mengurangi frekuensi validasi; namun pendekatan ini akan memperburuk konsistensi karena meningkatkan kemungkinan benda basi sedang diakses sementara terputus. Biaya koherensi cache ini diperburuk dalam sistem seperti itu Coda menggunakan cache antisipasi untuk ketersediaan, karena jumlah objek dalam cache (penduduk set ukuran) jauh lebih besar dari jumlah objek yang digunakan saat ini (bekerja set ukuran). Solusi Coda adalah untuk menjaga koherensi cache pada berbagai tingkat rincian dan menggunakan callback \ [11] Klien dan server memelihara informasi versi di objek individu serta seluruh sub pohon dari mereka. Validasi cache cepat mungkin dengan membandingkan versi prangko di subpohon. Setelah didirikan, validitas dapat bemaintained melalui callback. Pendekatan ke cache koherensi perdagangan presisi pembatalan untuk kecepatan validasi. Ia menyimpan kebenaran sementara secara dramatis mengurangi biaya koherensi cache dibawah kondisi lemah konektivitas. Penggunaan pengukuran dari Coda mengkonfirmasi bahwa potensi keuntungan memang dicapai dalam praktek \ [12].
Gagasan mempertahankan koherensi di beberapa granularities dapat digeneralisasi ke berbagai jenis data dan aplikasi dengan cara berikut:
• cache data klien memuaskan beberapa predikat P dari server.
• server mengingat predikat Q yang jauh lebih murah untuk menghitung, dan memiliki properti P menyiratkan P. Dengan kata lain, selama Q adalah benar, cache data itu sesuai dengan yang dijamin berlaku. Tetapi jika Q adalah palsu, tidak ada yang bisa disimpulkan tentang bahwa data
• Pada setiap update, server kembali mengevaluasi Q. Jika Q menjadi palsu, server memberitahu klien bahwa perusahaan data cache mungkin basi.
• Sebelum akses berikutnya, klien harus menghubungi server dan memperoleh data segar memuaskan P.
Kita lihat Q sebagai semantik callback untuk P, karena interpretasi P dan Q tergantung pada spesifik dari data dan aplikasi. Misalnya, P akan menjadi SQL pilih pernyataan jika salah satu data cache dari relasional database. Atau bisa juga sepotong kode yang elakukan pola cocok bagi individu tertentu ' s wajah dari database gambar. Q harus sesuai dengan P :
lebih sederhana pilih pernyataan dalam kasus pertama, dan sepotong kode yang melakukan pertandingan pola yang jauh kurang akurat dalam kedua kasus. Dalam Coda, P sesuai dengan nomor versi suatu objek yang sama dengan nilai tertentu ( x ), sedangkan Q sesuai dengan nomor versi dari encapsulating volume yang tidak berubah sejak terakhir kali versi jumlah objek dikonfirmasi akan x. Validasi semantik dapat diperluas ke domain luar mobile computing. Ini akan sangat berharga dalam sistem terdistribusi secara geografis luas, dimana Perbedaan waktu antara tindakan lokal dan remote terlalu besar untuk mengabaikan bahkan ketika komunikasi terjadi di kecepatan cahaya. Predikat Q dalam kasus seperti berfungsi sebagai
validator murah untuk data cache memenuhi beberapa kriteria yang kompleks. Perhatikan contoh dari sistem terdistribusi benua di Amerika Serikat. Bahkan pada kecepatan cahaya, komunikasi dari satu pantai ke yang lain memakan waktu sekitar 16 milidetik. A round trip RPC akan mengambil alih 30 milidetik. Selama ini, klien dengan prosesor MIP 100 dapat mengeksekusi lebih dari 3 juta instruksi! Karena kecepatan prosesor dapat diharapkan meningkat seiring waktu, kesempatan yang hilang komputasi yang diwakili oleh skenario ini hanya akan memperburuk.
Seiring waktu, model sinkron tersirat dalam penggunaan RPC akan semakin tidak bisa dipertahankan. Akhirnya, sangat wide-area sistem terdistribusi harus terstruktur
sekitar model asynchronous. Pada apa yang skala dan waktu pergeseran ini akan terjadi tergantung pada dua faktor: desain secara substansial lebih sederhana, implementasi, dan debugging melekat pada model sinkron, dan kinerja jauh lebih tinggi (dan karenanya kegunaan) dari model asynchronous.
Salah satu model asynchronous menjanjikan diperoleh oleh menggabungkan gagasan validasi murah tapi konservatif dengan gaya pemrograman ditandai dengan optimis concurrency control \ [8]. Pendekatan yang dihasilkan beruang beberapa kemiripan dengan penggunaan petunjuk yang ada di terdistribusi sistem \ [19], dan yang terbaik diilustrasikan oleh contoh. Pertimbangkan remote control dari robot penjelajah di permukaan Mars. Sejak cahaya mengambil beberapa menit untuk melakukan perjalanan dari bumi ke Mars, dan keadaan darurat dari berbagai macam mungkin muncul di Mars, robot harus mampu bereaksi pada Surat sendiri. Pada saat yang sama, eksplorasi harus diarahkan hidup dengan pengontrol manusia di bumi - perintah klasik dan kontrol masalah.
Contoh ini ciri sistem terdistribusi di mana latency komunikasi cukup besar bahwa sinkron paradigma desain tidak akan bekerja. Pengetahuan tentang robot ' status akan selalu usang di bumi. Tapi, karena keadaan darurat jarang, pengetahuan ini biasanya akan berbeda dari realitas saat ini dalam salah satu dari dua cara jinak. Entah perbedaan dalam atribut relevan untuk tugas itu di tangan, atau perbedaan dapat diprediksi dengan akurasi yang memadai metode seperti hisab mati. Misalkan robot ' s negara adalah P, yang ditandai dalam transmisi ke bumi. Berdasarkan beberapa sifat, Q , negara ini, perintah dikeluarkan untuk robot. Untuk perintah ini akan berarti ketika mencapai robot, Q tetap harus benar. Hal ini dapat diverifikasi oleh transmisi Q bersama dengan perintah, dan memiliki robot memvalidasi Q pada saat diterima. Untuk pendekatan ini akan layak, baik transmisi dan mengevaluasi Q harus murah. Ada, tentu saja, banyak pertanyaan rinci akan menjawab tentang pendekatan ini. Tetapi tidak menawarkan menarik cara menggabungkan kebenaran dengan kinerja di daerah yang sangat luas-sistem terdistribusi.
3.2.1. Beberapa Pertanyaan Terbuka
• Dalam keadaan yang callback semantik paling berguna? Kapan mereka tidak berguna?
• Apa bisa bentuk P dan Q mengambil untuk tipe data dan aplikasi yang digunakan umum? Bagaimana seseorang memperkirakan biaya relatif mereka dalam kasus?
• Bisa P dan Q benar-benar kode sewenang-wenang? Apakah ada diperlukan untuk efisiensi dan pembatasan kepraktisan?
• Bagaimana kita berasal Q dari P cepat? Apakah ada pembatasan P yang membuat ini sederhana? Bagaimana salah satu trade off biaya relatif dan manfaat dari P dan Q? Apakah ruang tradeoff diskrit atau terus-menerus? Bisa tradeoff ini dibuat adaptif?
3.3. Algoritma untuk Pencabutan Sumber Daya
Adaptasi Aplikasi-aware mempersulit masalah pengelolaan sumber daya. Pada prinsipnya, sistem ini memiliki semua sumber daya. Setiap saat, mungkin mencabut sumber daya yang telah sementara didelegasikan kepada suatu applicaton. Sayangnya, realitas
tidak pernah sesederhana itu. Berbagai faktor menyulitkan masalah.
Pertama, beberapa aplikasi yang lebih penting daripada yang lain. Setiap strategi pencabutan diterima harus peka terhadap perbedaan-perbedaan ini. Kedua, biaya mencabut sama
sumberdaya mungkin berbeda untuk aplikasi yang berbeda. Untuk Misalnya, mengurangi bandwidth yang tersedia untuk satu aplikasi dapat mengakibatkan secara substansial meningkatkan Jumlah pengolahan itu tidak untuk mengimbanginya. Sebuah serupa
pengurangan bandwidth untuk aplikasi lain dapat mengakibatkan dalam peningkatan jauh lebih kecil dalam pengolahan. Seorang yang baik strategi pencabutan harus memperhitungkan diferensial ini dampak. Ketiga, mungkin ada dependensi antara proses yang harus dipertimbangkan saat pencabutan. Sebagai contoh, dua proses mungkin memiliki
hubungan produsen-konsumen. Mencabut sumber daya dari satu proses dapat menyebabkan yang lain untuk kios. Lebih kompleks dependensi yang melibatkan beberapa proses juga
mungkin. Kecuali pencabutan membutuhkan dependensi ini ke account, bahaya seperti kebuntuan mungkin terjadi.
Pencabutan sumber daya dari aplikasi tidak umum dalam sistem saat ini. Penelitian sistem operasi Klasik telah difokuskan pada isu-isu alokasi sumber daya daripada sumber daya pencabutan. Akibatnya saat ini ada sedikit dikodifikasikan pengetahuan tentang teknik yang aman dan efisien untuk pencabutan. Kekurangan ini harus diperbaiki sebagai adaptasi aplikasi-aware menjadi lebih banyak digunakan.
3.3.1. Beberapa pertanyaan terbuka
• Bagaimana seseorang merumuskan pencabutan sumber daya masalah?
• Bagaimana satu ciri dampak diferensial pencabutan pada aplikasi yang berbeda?
• Strategi apa tidak salah gunakan jika beberapa sumber daya secara serentak harus dicabut?
• Bagaimana seseorang membedakan antara sumber daya yang pencabutan mudah untuk pulih dari dan mereka itu adalah mahal atau tidak mungkin untuk pulih dari?
• Bagaimana kita menangani kebuntuan selama pencabutan?
3.4. Analisis Adaptasi
Bagaimana seseorang membandingkan kemampuan adaptif dari dua mobile klien? Sosok utama merit adalah kelincahan, atau kemampuan klien untuk segera merespon gangguan.
Karena mungkin bagi klien untuk lebih lincah dengan hormat untuk beberapa variabel (seperti bandwidth) daripada yang lain (seperti daya baterai), kelincahan harus dipandang sebagai komposit metrik.
Sebuah sistem yang sangat gesit mungkin menderita ketidakstabilan. Sistem seperti mengkonsumsi hampir semua sumber daya yang bereaksi terhadap gangguan kecil, maka melakukan sedikit berguna perhitungan. Klien mobile yang ideal adalah jelas salah satu yang
sangat lincah tapi sangat stabil terhadap semua variabel kepentingan.
Teori Kontrol adalah domain yang mungkin berguna wawasan untuk menawarkan dalam menyempurnakan ide-ide dan mengukur mereka. Secara historis, teori kontrol telah difokuskan pada perangkat keras sistem. Tetapi tidak ada alasan konseptual mengapa tidak dapat diperpanjang dengan sistem perangkat lunak. Hanya hati-hati investigasi bisa mengatakan, tentu saja, apakah relevansi tersebut langsung dan bermanfaat atau hanya dangkal.
3.4.1. Beberapa pertanyaan terbuka
• Apa metrik hak agility?
• Apakah ada teknik sistematis untuk meningkatkan kelincahan dari sistem?
• Bagaimana seseorang memutuskan kapan sebuah sistem mobile "cukup gesit"?
• Apa metrik hak stabilitas sistem? Bisakah satu mengembangkan pedoman desain untuk memastikan stabilitas?
• Dapatkah satu analitis menurunkan kelincahan dan stabilitas sifat-sifat sistem adaptif tanpa bangunan itu pertama?
3.5 Global Estimasi dari Lokal Pengamatan
Adaptasi memerlukan suatu klien mobile untuk merasakan perubahan di lingkungan, membuat kesimpulan tentang penyebab ini perubahan, dan kemudian bereaksi dengan tepat. Ini menyiratkan kemampuan untuk membuat estimasi global berdasarkan lokal pengamatan.
Untuk mendeteksi perubahan, klien harus bergantung pada lokal pengamatan. Sebagai contoh, jumlah tersebut dapat mengukur sebagai kekuatan sinyal lokal, tarif paket, round trip rata-rata
kali, dan dispersi dalam waktu round-trip. Tapi menafsirkan pengamatan ini trivial. Perubahan dalam jumlah tertentu bisa disebabkan oleh banyaknya fenomena non-lokal. Sebagai contoh, tarif paket akan turun karena kelebihan beban pada server jauh. Tapi juga akan menurun bila ada kemacetan pada segmen jaringan menengah. Jika penyebab salah itu disimpulkan dari observasi, adaptasi dilakukan oleh klien mungkin tidak efektif atau kontraproduktif.
Saat ini tidak ada teori yang sistematis untuk membimbing global estimasi dari pengamatan lokal. Masalahnya adalah terutama menantang karena tidak adanya out-of-band komunikasi, karena klien tidak dapat menggunakan saluran alternatif untuk membantu mempersempit diagnosis pada utama saluran komunikasi.
3.5.1. Beberapa Pertanyaan Terbuka
• Apakah ada cara sistematis untuk melakukan estimasi global dari perkiraan lokal?
• Dapatkah seseorang terikat kesalahan dalam perkiraan global?
• Apa hubungan estimasi global untuk kelincahan adaptasi? Bisakah satu menghitung ini hubungan?
• Bisakah satu memberikan dukungan sistem untuk meningkatkan global estimasi? Misalnya, apakah erat-disinkronisasi, low-drift jam di klien dan server membantu?
• Dapatkah satu mengkuantifikasi manfaat dari out-of-band saluran? Sebagai contoh, berapa banyak apakah kehadiran latency rendah, channel bandwidth rendah membantu dengan perkiraan pada latensi tinggi paralel, tinggi bandwidth channel?
4. Kesimpulan
Ketegangan antara otonomi dan ketergantungan adalah intrinsik untuk semua sistem distibuted. Mobilitas memperburuk ketegangan ini, sehingga perlu untuk mobile klien untuk mentolerir berbagai jauh lebih luas dari kondisi eksternal telah telah sampai sekarang perlu.
Adaptasi adalah kunci untuk mobilitas. Dengan menggunakan lokal sumber daya untuk mengurangi komunikasi dan untuk mengatasi ketidakpastian, adaptasi insulates pengguna dari keanehan mobile lingkungan. Penelitian kami adalah mengeksplorasi dua pendekatan yang berbeda untuk adaptasi: aplikasi-transparan dan aplikasi-aware. Pengalaman kami dengan Coda menegaskan bahwa adaptasi aplikasi-transparan memang layak dan efektif untuk berbagai aplikasi penting. Dalam keadaan dimana tidak memadai, pengalaman awal kita dengan Odyssey menunjukkan bahwa adaptasi aplikasi-sadar adalah strategi yang tepat.
Sebagai penutup, ada baiknya berspekulasi pada jangka panjang dampak mobilitas terhadap sistem terdistribusi. Dalam bukunya Pikiran Anak-anak, Hans Moravec rekan saya menarik sebuah analogi antara peran mani mobilitas dalam spesies evolusi biologi, dan pengaruhnya terhadap kemampuan sistem komputasi \ [10]. Walaupun Hans komentar diarahkan pada sistem robot, saya percaya bahwa pengamatan-Nya berlaku sama baik untuk kelas yang jauh lebih luas dari sistem komputasi terdistribusi yang melibatkan unsur bergerak. Mobilitas akan mempengaruhi evolusi sistem terdistribusi dengan cara yang kita dapat hanya samar-samar melihat pada saat ini. Dalam hal ini, mobile computing adalah benar-benar mani
Ucapan Terima Kasih
Makalah ini adalah hasil dari bertahun-tahun interaksi dan brainstorming dengan anggota Coda dan proyek Odyssey. Para anggota termasuk Jay Kistler, Puneet Kumar, David Steere, Lily Mummert, Maria Ebling, Mashburn Hank, Noble Brian, Masashi Kudo, Raiff Josh, Lu Qi, Harga Morgan, Inamura Hiroshi, Tetsuro Muranaga, Baron Bob, Narayanan Dushyanth, dan Eric Tilton. Saya ingin mengucapkan terima kasih Vassos Hadzilacos dan Yoram Musa, Program Ketua dari Fourteenth dan ACM Kelimabelas Simposium tentang Prinsip-prinsip dari masing-masing Komputasi terdistribusi, untuk memberi saya kesempatan untuk mempresentasikan pikiran-pikiran ini sebagai diundang pembicara di PODC ' 95 dan sebagai kertas diundang dalam prosiding PODC ' 96. Saya juga ingin berterima kasih kepada Matt Zekauskas dan Brian Noble untuk membantu mereka dalam meninjau dan memperbaiki penyajian kertas.
References
\[1]Ebling, M.R.
Evaluating and Improving the Effectiveness of Caching for
Availability
.
PhD thesis, Department of Computer Science, Carnegie
Mellon University, 1997 (in preparation).
\[2]Howard, J.H., Kazar, M.L., Menees, S.G., Nichols, D.A.,
Satyanarayanan, M., Sidebotham, R.N., West, M.J.
Scale and Performance in a Distributed File System.
ACM Transactions on Computer Systems
6(1), February,
1988.
\[3]Kistler, J.J., Satyanarayanan, M.
Disconnected Operation in the Coda File System.
ACM Transactions on Computer Systems
10(1), February,
1992.
\[4]Kistler, J.J.
Disconnected Operation in a Distributed File System
.
PhD thesis, Department of Computer Science, Carnegie
Mellon University, May, 1993.
\[5]Kumar, P., Satyanarayanan, M.
Log-Based Directory Resolution in the Coda File System.
In
Proceedings of the Second International Conference on
Parallel and Distributed Information Systems
. San
Diego, CA, January, 1993.
\[6]Kumar, P.
Mitigating the Effects of Optimistic Replication in a
Distributed File System
.
PhD thesis, School of Computer Science, Carnegie Mellon
University, December, 1994.
\[7]Kumar, P., Satyanarayanan, M.
Flexible and Safe Resolution of File Conflicts.
In
Procedings of the 1995 USENIX Technical Conference
.
New Orleans, LA, January, 1995.
\[8]Kung, H.T., Robinson, J.
On Optimistic Methods for Concurrency Control.
ACM Transaction on Database Systems
6(2), June, 1981.
\[9]Lu, Q., Satyanarayanan, M.
Improving Data Consistency in Mobile Computing Using
Isolation-Only Transactions.
In
Proceedings of the Fifth Workshop on Hot Topics in
Operating Systems
. Orcas Island, WA, May, 1995.
\[10]Moravec, H.
Mind Children.
Harvard University Press, Cambridge, MA, 1988.
\[11]Mummert, L.B., Satyanarayanan, M.
Large Granularity Cache Coherence for Intermittent
Connectivity.
In
Proceedings of the 1994 Summer USENIX Conference
.
Boston, MA, June, 1994.
\[12]Mummert, L.B., Ebling, M.R., Satyanarayanan, M.
Exploiting Weak Connectivity for Mobile File Access.
In
Proceedings of the Fifteenth ACM Symposium on
Operating Systems Principles
. Copper Mountain
Resort, CO, December, 1995.
\[13]Noble, B., Satyanarayanan, M.
An Empirical Study of a Highly-Available File System.
In
Proceedings of the 1994 ACM Sigmetrics Conference
.
Nashville, TN, May, 1994.
\[14]Noble, B., Price, M., Satyanarayanan, M.
A Programming Interface for Application-Aware
Adaptation in Mobile Computing.
Computing Systems
8, Fall, 1995.
\[15]Satyanarayanan, M., Kistler, J.J., Kumar, P., Okasaki,
M.E., Siegel, E.H., Steere, D.C.
Coda: A Highly Available File System for a Distributed
Workstation Environment.
IEEE Transactions on Computers
39(4), April, 1990.
\[16]Satyanarayanan, M.
The Influence of Scale on Distributed File System Design.
IEEE Transactions on Software Engineering
18(1),
January, 1992.
\[17]Satyanarayanan, M., Kistler, J.J., Mummert, L.B., Ebling,
M.R., Kumar, P., Lu, Q.
Experience with Disconnected Operation in a Mobile
Computing Environment.
In
Proceedings of the 1993 USENIX Symposium on
Mobile and Location-Independent Computing
.
Cambridge, MA, August, 1993.
\[18]Steere, D.C., Satyanarayanan, M.
Using Dynamic Sets to Overcome High I/O Latencies
During Search.
In
Proceedings of the Fifth Workshop on Hot Topics in
Operating Systems
. Orcas Island, WA, May, 1995.
\[19]Terry, D.B.
Caching Hints in Distributed Systems.
IEEE Transactions in Software Engineering
SE-13(1),
January, 1987.
Minggu, 08 Mei 2011
Langganan:
Posting Komentar (Atom)
0 komentar:
Posting Komentar