Rabu, 18 April 2012

Konsep Dasar Name Service

Dalam sistem terdistribusi, name service digunakan untuk menunjuk ke suatu sesumber yang beragam dan tersebar seperti komputer, layanan (services), file, remote object, use yang dapat memudahkan pengguna.

Contoh penamaan pada aplikasi sistem terdistribusi:
– URL untuk mengakses suatu halaman web.
– Alamat e-mail utk komunikasi antar pemakai.

Selain itu name service juga merupakan layanan penamaan yang berfungsi untuk menyimpan naming context, yakni kumpulan binding nama dengan objek, tugasnya untuk me-resolve nama. Kebutuhan akan penamaan juga memicu munculnya layanan penamaan (Naming Services) yang menyediakan mekanisme dan struktur penamaan objek itu sendiri. Contohnya DNS (Domain Name Service), X.500, COBRA, dan GNS.


Name Service and the Domain Name System
Suatu name service dapat menyimpan kumpulan satu atau lebih kontek penamaan yaitu sehimpunan keterkaitan antara nama dan atribut objek, seperti user, komputer, services dan remote object.

Yang dibutuhkan dari suatu Name Services adalah :
– penamaan unik yang standard
– scalability
– consistency
– performance dan availability
– mudah menyesuaikan terhadap perubahan
– perlindungan kegagalan

Dalam rangka memenuhi kebutuhan tersebut, sebuah name server setidaknya dapat menerapkan mekanisme berikut :
o Partitioning
- Tidak ada satu name server yang dapat menyimpan seluruhnama dan atribut untuk seluruh jaringan.
- Data nama dipartisi berdasarkan domain.

o Replication
- Sebuah domain biasanya memiliki lebih dari satu name server
- Untuk meningkatkan availability dan performance

o Caching
- Sebuah name server dapat melakukan mekanisme caching terhadap data nama dari name server lain
- Hal ini dilakukan untuk mencegah operasi permintaan sama berulangulang

Name servers and navigation
Navigasi dan name servers di sini memiliki arti petunjuk pengaksesan nama data dari lebih dari satu name server untuk menyelesaikan suatu pemetaan nama (resolve a name). Yang didalamnya terdapat 3 metode, yaitu:
- Iterative Navigation
- Non-recursive, server-controlled
- recursive, server-controlled

1. Iterative Navigation

Agent tetap memegang kendali proses resolusi sebuah nama. Serve mengembalikan status resolusi dan alamat server yang harus dihubungi selanjutnya. Agent bekerja lebih keras dari cara pertama, dan perlu sedikit pintar.


Transitive Navigation hampir sama dengan resolusi rekursif. Return address dari agent diteruskan oleh server, sehingga jika informasi lokasi obyek ditemukan, informasi tersebut langsung diteruskan ke agent. Kelebihan : berkurangnya pengiriman pesan, server tidak perlu menyimpan status on going resolution. Kekurangan: pengirim tidak menerima ACK.

2. Non-recursive and Recursive server-controlled navigation

3. Rekursif

Adalah aktifitas berpindah dari server ke server, shg nama selalu di-resolve dalam konteks yang baru. Multiple servers transparan bagi name agent. Agent tidak sibuk. Servers harus menyimpan return address untuk setiap outgoing lookup, dan secara keseluruhan bekerja keras.

Selasa, 03 April 2012

Software, Teknologi dan Bahasa Komunikasi Agent

Dapat ditarik suatu definisi agen yang merupakan rangkuman dari beberapa definisi yang telah dikembangkan para pakar agen. Definisi agen yang akan dipakai dalam penelitian ini yaitu dapat dilihat dalam dua perspektif, yaitu perspektif user dan perspektif sistem. Dalam perspektif user agen merupakan sebuahsoftware yang bertindak selaku perantara/agen atau broker bagi useryang memungkinkan user untuk mendelegasikan tugas kepadanya serta melakukan pekerjaan seperti yang diperintahkannya. Sedangkan dalam perspektif sistem, agen dapat mengenali lingkungan kerjanya dan memiliki sifat-sifat keagenan. Sifat-sifat yang harus dimiliki agen adalah sebagai berikut (Lange, 1998) :


1. Menyatu dengan lingkungannya

2. Memiliki sifat-sifat yang dimandatkan antara lain:



  • Reactive – dapat merasakan perubahan pada lingkungannya dan bertindak sesuai dengan perubahan lingkungan tersebut.
  • Autonomous – memiliki sistem kontrol terhadap tindakannya sendiri.
  • Goal-driven – bersifat pro-active untuk mencapai tujuan
  • Temporally continuous – dapat melanjutkan proses eksekusi di tempat lain.

3. Memiliki salah satu atau lebih sifat-sifat berikut
  • Communicative – dapat berkomunikasi dengan agen lain
  • Mobile – dapat berpindah dari satu host ke host lain
  • Learning – beradaptasi sesuai dengan pengalaman sebelumnya
  • Believable – dapat dipercaya pada tingkatend-user, agen tidak akan merusak datauser.


Teknologi


Adalah metode ilmiah untuk mencapai tujuan praktis; ilmu pengetahuan terapan atau dapat pula diterjemahkan sebagai keseluruhan sarana untuk menyediakan barang-barang yg diperlukan bagi kelangsungan dan kenyamanan hidup manusia. Ada tiga klasifikasi data dari kemajuan teknologi yaitu:

  • Kemajuan teknologi yang bersifat netral (neutral technological progress) Terjadi bila tingkat pengeluaran (output) lebih tinggi dicapai dengan kuantitas dan kombinasi faktor-faktor pemasukan (input) yang sama.
  • Kemajuan teknologi yang hemat tenaga kerja (labor-saving technological progress) Kemajuan teknologi yang terjadi sejak akhir abad kesembilan belas banyak ditandai oleh meningkatnya secara cepat teknologi yang hemat tenaga kerja dalam memproduksi sesuatu mulai dari kacang-kacangan sampai sepeda hingga jembatan.
  • Kemajuan teknologi yang hemat modal (capital-saving technological progress) Fenomena yang relatif langka. Hal ini terutama disebabkan karena hampir semua riset teknologi dan ilmu pengetahuan di dunia dilakukan di negara-negara maju, yang lebih ditujukan untuk menghemat tenaga kerja, bukan modalnya.

Mobile Agent

Mobile agent ialah agen yang mempunyai kemampuan berpindah-pindah dalam jaringan (contohnya pada jaringan World Wide Web), berinteraksi dengan host-host asing, mengumpulkan informasi berdasarkan pengguna, dan mengembalikannya ke pengirim setelah melakukan tugasnya. Mobile agent ini diimplementasikan oleh remote program. Hal-hal yang berkenaan dengan pemrograman remote juga dapat diterapkan pada mobile agent seperti :
Penamaan Program – memberikan nama kepada agen untuk membedakannya dengan agen yang lain
  • Autentifikasi program – autentifikasi implementor dari program agen.
  • Migrasi Program – memindahkan program dari satu mesin ke mesin lainnya
  • Keamanan Program – memastikan program tidak merusak mesin pengeksekusinya.
Salah satu contoh mobile agent ialah agen monitoring data stok dan penjualan yaitu agen yang secara mandiri bertugas untuk memonitor perubahan data, melaporkan kepada pengirimnya jika terjadi perubahan data pada basis data yang dimonitor. Agenmonitoring sangat berguna bagi sistem yang mengalami perubahan secara dinamis, dimana perubahan data tersebut mempunyai pengaruh yang besar pada sistem secara keseluruhan. Dalam implementasinya agen jenis ini dapat menggunakan protokol HTTP (Hypertext Transfer Protocol) maupun ATP (Aglets Transfer Protocol) untuk mengakses informasi di dalam basis data yang terhubung dalam jaringan web. Sedangkan untuk mengakses ke basis data dapat digunakan KQML atau bahasa komunikasi agen lainnya untuk komunikasi antar agen.

Bahasa Komunikasi Agent

Komunikasi antar agent terjadi ketika mereka akan menyampaikan pesan atau informasi tertentu. Dalam berkomunikasi, agent memiliki cara tersendiri yang simulasinya dapat kita lihat pada pemakaian netlogo. Komunikasi bisa di definisikan sebagai proses bertukar informasi antar agent. Agent memperlihatkan cara berkomunikasinya ketika akan menyampaikan informasi pada agent lainnya.
Bahasa di definisikan sebagai satu set simbol yang dikomunikasikan oleh agent untuk menyampaikan informasi. Dalam artificial intelligent bahasa manusia sering disebut bahasa alami sebagai pembeda dengan bahaa pemrograman komputer. Bahasa juga didefinisikan sebagai satu set aturan sosial bersama yang diterima dan dibatasi oleh aturan tata bahasa.

Label: