Anda di halaman 1dari 19

SISTEM TERDISTRIBUSI

NAME SERVICE

RAHMAT SALEH HSB RAISSA ADITYA RAHAYU RIBKA BR. GINTING DINA AMRIYANI HSB ERJAN FIKRY ANTARI EMIR SATRIA HASIBUAN ADYA ZIZWAN PUTRA SITA SARTIKA

(111421046) (111421072) (121421006) (121421017) (121421025) (121421034) (121421029) (121421013)

PROGRAM STUDI S1 EKSTENSI ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA MEDAN 2012

KATA PENGANTAR

Puji syukur kami panjatkan kehadirat Allah SWT yang telah memberikan rahmat serta karunia-Nya kepada kami sehingga kami berhasil menyelesaikan makalah ini yang alhamdulillah tepat pada waktunya yang berjudul NAME SERVICE Makalah ini berisikan tentang informasi Pengertian NAME SERVICE atau yang lebih khususnya membahas penerapan Name Service dalam Sistem Terdistribusi. Diharapkan Makalah ini dapat memberikan informasi kepada kita semua tentang Name Service. Kami menyadari bahwa makalah ini masih jauh dari sempurna, oleh karena itu kritik dan saran dari semua pihak yang bersifat membangun selalu kami harapkan demi kesempurnaan makalah ini. Akhir kata, kami sampaikan terima kasih kepada semua pihak yang telah berperan serta dalam penyusunan makalah ini dari awal sampai akhir. Semoga Allah SWT senantiasa meridhai segala usaha kita. Amin.

Medan, 14 November 2012

Penyusun

NAME SERVICE

Pendahuluan

Nama = string digunakan untuk mengidentifikasi objek (file, komputer, orang, proses, objek). Name Service dalam Sistem Terdistribusi merupakan layanan penamaan yang berfungsi untuk menyimpan naming context, yaitu sehimpunan keterkaitan antara nama dan atribut objek (binding), seperti user, komputer, services, dan remote object, tugasnya untuk me-resolve nama. Pengaksesan resource pada sistem terdistribusi yang memerlukan: i. ii. iii. Nama resource (untuk pemanggilan), Alamat (lokasi resource tersebut), Rute (bagaimana mencapai lokasi tersebut).

Name Service memiliki konsentrasi pada aspek penamaan, dan pemetaan antara nama & alamat, bukan pada masalah rute, yang dibahas di Jaringan Komputer. Resource yang dipakai dalam Name Service adalah: komputer, layanan, remote object, berkas, pemakai.

Konsep Penamaan

1. Tekstual nama (dibaca manusia) -Digunakan untuk mengidentifikasi layanan individu, orang alamat email: handrizal@ usu.ac.id URL: www.google.com - Atau kelompok orang atau benda mailing list: professors@unibz.it email domain (jika ada beberapa mail exchanger)

2. Numeric alamat (mengidentifikasi lokasi obyek) - Mencari sumber daya individu, misalnya 193.206.186.100 (alamat IP host) - Kasus khusus: alamat kelompok, misalnya multicast dan broadcast alamat: Multicast IP, Ethernet

3. Obyek pengidentifikasi - "Murni" nama (pola bit), biasanya numerik dan besar tidak pernah digunakan kembali (termasuk timestamp) digunakan untuk keperluan identifikasi

Tidak ada perbedaan nyata antara nama dan alamat. Keduanya harus mendongak untuk memperoleh tingkat rendah data atau resolusi nama.

Contoh naming pada aplikasi sistem terdistribusi: a. file system - Nama file peta ke file b. RMI registri - Mengikat objek remote ke nama simbolik c. DNS (Domain Name Service) - Nama domain peta ke alamat IP -. URL untuk mengakses suatu halaman web. - Terukur, dapat menangani perubahan d. X.500/LDAP layanan direktori - Nama memetakan seseorang untuk alamat email, nomor telepon e. Alamat e-mail utk komunikasi antar pemakai.

Tujuan dari Penamaan

1. Identifikasi 2. Seorang pemakai menginginkan obyek/layanan A, bukan obyek/layanan B. 3. Memungkinkan terjadinya sharing 4. Lebih dari satu pemakai dapat mengindentifikasikan resource dengan nama yang sesuai (tidak harus nama yang sama). 5. Memungkinkan location independence (File dapat dipindahkan tanpa penggantian nama) 6. Perubahan lokasi tidak menuntut perubahan nama, asalkan lokasi tidak menjadi bagian dari nama resource tsb. 7. Memberikan kemampuan keamanan (security) 8. Jika sebuah nama dipilih secara acak dari himpunan besar interger, maka nama tsb hanya bisa diketahui dari legitimate source, bukan dari menebak. Jadi jika seseorang mengetahui nama obyek tersebut, maka dia memang diberi tahu, karena sulit sekali menebak nama tersebut.

Dalam rangka memenuhi kebutuhan tersebut, sebuah name server setidaknya dapat menerapkan mekanisme berikut:

Partitioning

Tidak ada satu name server yang dapat menyimpan seluruh nama dan atribut untuk seluruh jaringan. Data nama dipartisi berdasarkan domain.

Replication

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

Caching

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

Contoh Penamaan yang memberikan kemampuan keamanan

Nama dipilih secara acak dari 128 bit integer, maka ada sekitar 3 x 1038 nama yang berbeda. Jika sekumpulan obyek membutuhkan nama yang unik, dan digenerate 1 juta dalam 1 detik selama 100 tahun, maka pada akhirnya akan ada sekitar 3 x 1015 obyek (nama). Proporsi nama yang dipakai, jauh lebih kecil dari keseluruhan nama yang tersedia. Probabilitas benar dalam menebak nama obyek tersebut adalah 1:1023. Jika dalam dalam 1 detik dilakukan 1 juta tebakan, maka diperlukan sekitar 1010 tahun untuk menebak nama yang benar.

Pure name : nama yang tidak perlu di terjemahkan, karena pada nama tersebut sudah menunjuk alamat objek langsung. Contoh : IP non-pure name : dalam nama mengandung suatu informasi (misalnya atribut) tentang suatu objek. Contoh : URL, alamat email, X.500 Directory Service, IOR (Interoperability Object Reference).

Name Resolution, Binding, Attributes Name resolution: Nama ditranslasikan ke data tentang resource/object tersebut. Binding: Asosiasi atau gabungan antara nama & obyek. Biasanya nama diikat (bound) ke attributes dari suatu obyek.

Address: atribut kunci dari sebuah entitas dalam sistem terdistribusi Attribute: Contoh: DNS : memetakan dari nama ke atribut alamat IP host Nilai suatu object property.

X.500 : memetakan suatu nama seseorang ke beberapa atribut, seperti email, telepon, dan sebagainya.

CORBA Naming Service yang memetakan nama remote objek ke remote object reference

Composed Naming Domains to access a resource from a URL

UR http://www.cdk3.net:8888/WebExamples/earth.ht DNS
Resolution via DNS

Resource ID (IP number, port number, 55.55.55.5


Resolution via ARP

888

WebExamples/earth.ht

Web

Network 2:60:8c:2:b0:5 Socke


URL (Uniform Resource Locator) merupakan suatu tipe khusus URI (Uniform Resource Identifier). Tipe lainnya adalah URN (Uniform Resource Name). Ide dengan adanya URN adalah user dapat melakukan query berdasar URN untuk

mendapatkan URL objek. URC (Uniform Resource Characteristics) merupakan subset dari URN untuk mendeskripsikan suatu sesumber Web dengan suatu atribut, contoh 'author=budsus', 'keywords=sister,...'

Contoh bentuk URL Pada RFC 1738, penamaan dengan URL dapat mendukung beberapa protokol berikut :

"http://" host [ ":" port] ["/" path] [ "?" search] "ftp://" [user ":" password "@" host] [":" port] *[ "/" directoryname] [ "/" filename]

Contoh Bentuk URN urn:nameSpace:nameSpace-specificName. Contoh : urn:ISBN:0-201-62433-8 Contoh : urn:dcs:gormenghast.ac.uk:TR2000-56

Jenis Nama User names: Dibuat oleh pemakai (user). Merujuk pada suatu obyek atau layanan. Terdiri dari strings of characters. Contoh: hp201 untuk pencetak, ~bettyp/tmp/test.c untuk berkas.

System names: Terdiri dari bit string. Internal untuk sistem, tidak ditujukan untuk manusia. Lebih compact dari user names, sehingga dapat dibandingkan dan lebih efisien.

Struktur Nama Primitive/flat names (Unique Identifiers = UIDs) Tanpa struktur internal, hanya string of bits. Digunakan utk perbandingan dengan UID lain. Tidak membawa informasi lain: pure names. Sangat berguna dan banyak digunakan karena: Location & application independent, sehingga tidak menjadi masalah bagi mobilitas obyek. Seragam, fixed size. Compact: mudah disimpan, di-pass, & jika cukup besar menjadi sulit ditebak. Partitioned Names (PN) Komposisi dari beberapa nama primitif, biasanya disusun secara hirarkis. Contoh: telaga.cs.ui.ac.id, /cs/docs/akademik/SisDis/naming.ppt. Membawa informasi: impure names. Biasanya tidak secara unik mengidentifikasikan obyek, beberapa nama bisa dipetakan ke satu obyek (misalnya UNIX file links). Descriptive names (DN) Daftar atribut yang secara bersama-sama mengidentifikasikan obyek secara unik. Membawa informasi: impure names. DN adalah superset dari PN.

OSI X.500 directory service. Directory Information Tree (DIT) X.500 name tree Directory Information Base (DIB):

The entire directory structure, including the data associated with the nodes.

Name Contexts Nama selalu diasosiasikan dengan konteks, yang mendefinisikan di mana nama tersebut valid. Ada 2 macam konteks: Universal context: Di manapun nama digunakan, nama di-resolved dengan cara yang sama. Dapat disalin dari mesin ke mesin dengan bebas. Contoh: http://www.cs.ui.ac.id/index.html.

Relative context: Context dependent. Contoh: a/b/c, b/c resolvable pada konteks a. Sedangkan pada node yang berbeda, a/b/c dapat merujuk pada hal yang berbeda pula.

Apakah yang Diharapkan dari Fasilitas Penamaan Efisien, karena fasilitas penamaan merupakan dasar pada sistem terdistribusi dan digunakan secara terus menerus. Terdistribusi. Jika UIDs dibangkitkan oleh centralized generator, maka akan terjadi: Bottleneck. Node tempat generator tersebut mengalami kegagalan.

Tampak seperti global space, tidak tergantung konektifitas, topologi, dan lokasi obyek. Mendukung pemetaan 1:many antara nama & obyek, untuk

memungkinkan multicast. Mendukung dynamic relocation of objects, jika obyek/proses potensial untuk mobile (berpindah-pindah). Jadi diperlukan dynamic binding antara nama & alamat, juga antara alamat & rute. Memungkinkan local aliases, sehingga pemakai dapat mengekspresikan interpretasi semantik mereka terhadap suatu obyek. Tentu saja diperlukan pemetaan antara aliases dan full names.

Lokasi Resource

Lokasi Resource harus memiliki Broadcast ke semua name servers, yang berarti berfungsi melaporkan seluruh response (positif & negatif) yang kemudian lalu lintas menjadi sibuk. Lokasi resource hanya melaporkan positive response. Nama unik merupakan keharusan. Tidak scalable: Masih bisa ditolerir untuk LAN

Name lists

Client Name Agent

Client

Client

Name Agent

Network

Name Server

Name Server

Name Lists terdiri dari 2 komponen yaitu Name agents: Name agents berada di client, bisa 1 name agent per client atau 1 name agent digunakan oleh beberapa clients. Name agents menjadi perantara antara client dan name server. Contoh: resolver pada Domain Name Service (DNS). Name servers. Name agents menggunakan basis data terdistribusi yang terdiri dari tuples <nama, lokasi, [atribut]>. Contoh atribut: jika resource adalah printer, maka atribut dapat menyatakan apakah obyek dapat melakukan pencetakan postcripts atau tidak.

Fungsi Name Agents

Fungsi Name Agents memastikan bahwa lokasi name servers terlihat transparan bagi client programs (menyembunyikan lokasi name server). Fungsi Name Agents Berbicara dalam protokol komunikasi yang dimengerti name server. Name Agents mengetahui bagaimana name space diatur, sehingga tahu ke mana suatu request harus dikirim untuk memperoleh informasi lokasi, juga untuk melakukan negosiasi kompabilitias atau availability sumber daya (resource), berdasarkan atribut.

Name Servers

Name Servers menyimpan pemetaan nama ke alamat untuk setiap obyek dalam sistem, contohnya melalui tuples <nama, lokasi, [atribut]>. Hal penting yang harus dimiliki: Availability, Resilience to failure, Konsistensi, Kecepatan menerima pengaruh perubahan name lists, Kemudahan mengkompilasi list of objects (resources).

Beberapa bentuk Name List:

Tersentralisasi. Tereplikasi penuh. Tereplikasi sebagian (menggunakan cache).


Name List - Tersentralisasi Adalah Name list yang berada pada satu mesin. Kelebihan:

Layanan cukup dilakukan dengan melihat name lists. Waktu yang dibutuhkan antara registrasi obyek & saat obyek tsb dapat diakses, sangat singkat.

Mudah untuk memperoleh daftar obyek aktif.

Kekurangan: Poor resilience: jika node crash, terjadilah malapetaka. Kemacetan (congestion) membatasi availability.

Name List - Tereplikasi Penuh

Digunakan untuk mengatasi kekurangan name list tersentralisasi.

Masalah: WRITE:
Untuk menjaga konsistensi, jika name list direplikasi, maka setiap

perubahan harus terefleksi di semua copy.


Bagaimana jika saat perubahan dicatat, ada sebagian replika yang tidak

dapat dihubungi (link or node failures)? READ:


Bagaimana jika informasi yang diperoleh ternyata sudah usang, atau ada

beberapa replika yang tidak dapat diakses?

Solusi: Sebuah name server dipilih sebagai master, dan selalu merefleksikan secara akurat state of the world. Name servers lainnya bertindak sbg pemberi petunjuk (hint), yang belum tentu benar. Propagasi informasi antara master dan replika dilakukan saat sepi.

Diperlukan beberapa asumsi, yaitu: Data penamaan tidak sering berubah, sehingga ketidakkonsistenan relatif jarang terjadi. Tergantung dari aplikasi, cukup akurat untuk mail system tapi tidak untuk sistem berbasis obyek yang sangat dinamis. Jika dipakai data yang usang, maka akan terjadi error yang dapat diatasi. Contoh: Buku telepon yang memuat no telp yang tidak terpakai lagi. Error & penanganannya? Tidak ada masalah jika dipakai data usang. Contoh: forward pada alamat e-mail yang lama.

Kelebihan: Tidak perlu suatu central name server, di mana seluruh station tergantung pada name server tsb. Masih relatif mudah memperoleh daftar obyek dalam suatu jaringan, di mana suatu name list berisi informasi yang dibutuhkan. Availability meningkat, shg lokasi obyek dapat ditemukan lebih cepat dari name list tersentralisasi.

Kekurangan: Menggunakan lebih banyak memori. Potensial timbul masalah ketidakkonsistenan. Pada beberapa jaringan, broadcast packet ke replika sangat meningkatkan overhead jaringan.

Name Server - Tereplikasi Sebagian

Name Server yang tereplikasi sebagian adalah sebagian name lists disimpan dalam cache setiap mesin. Hal ini memerlukan mekanisme petunjuk (hint), yang biasanya benar. Tidak ada master copy, sehingga dapat timbul masalah yaitu seberapa besar cache atau menekah nama yang harus dihapus dari cache untuk menjaga konsistensi.

Name Server - Tereplikasi Sebagian biasanya umum digunakan pada sistem berbasis obyek. UID juga merupakan nama obyek. Petunjuk lokasi disimpan dalam nama tersebut, untuk menghindari seringnya berkonsultasi dengan name server. Petunjuk dari Name Server - Tereplikasi Sebagian harus dapat diandalkan. Jika sebuah obyek berpindah, maka setiap reference harus diubah satu persatu.

Name Resolution

Yaitu diberikan nama obyek, lalu temukan obyek tersebut. Simpan semua nama di setiap name server. Partisi basis data penamaan (naming database) dapat dilakukan berdasarkan: Algoritma: Tergantung dari nilai sebuah fungsi hash. Tidak tergantung pada struktur dan lokasi obyek. Sintaks: Contoh: telaga.cs.ui.ac.id. Atribut. Proxy dapat menyimpan pointer migrasi suatu obyek.

Non-recursive and Recursive

Server-controlled Navigation

NS2 2 1 client 4 NS1 3 NS3 client 5 1 NS1 2 4

NS2

NS3

Non-recursive server-controlled

Recursive server-controlled

A name server NS1 communicates with other name servers on behalf of a client

Rekursif

Agen

N.S.

N.S.

N.S.

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.

Iterative Navigation

NS2 2 Client 1 3 NS3 NS1 Name servers

A client iteratively contacts name servers NS1NS3 in order to resolve a name

Agent tetap

memegang

kendali proses resolusi

sebuah

nama.

Server

mengembalikan status resolusi dan alamat server yang harus dihubungi selanjutnya. Agent bekerja lebih keras dari cara pertama, dan perlu sedikit pintar.

Transitive Navigation

N.S. Agen N.S.


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. Kelebihannya berkurangnya pengiriman pesan, server tidak perlu menyimpan status on going resolution. Kekurangannya adalah pengirim tidak menerima ACK.

N.S.

KESIMPULAN

Dalam sistem terdistribusi, nama digunakan untuk menunjuk ke suatu sesumber yang beragam dan tersebar seperti komputer, layanan (services), file, remote object, use. Nama memfasilitasi komunikasi : nama domain sebagai bagian dari email resource sharing : nama domain internet.

Proses tidak dapat mengakses suatu sesumber, jika sesumber tersebut tidak diberi nama. Kebutuhan akan penamaan tersebut memicu munculnya layanan penamaan (Naming Services) yang menyediakan mekanisme dan struktur penamaan objek itu sendiri. Contoh : DNS (Domain Name Service), dan juga kebutuhan untuk pencarian objek berdasar nama dan juga atribut objek itu sendiri (Directory Service).

Suatu nama akan diterjemahkan ke dalam suatu data tentang sesumber atau objek yang dimaksudkan. Gabungan antara objek dan nama disebut binding. Name Service dalam Sistem Terdistribusi merupakan layanan penamaan yang berfungsi untuk menyimpan naming context, yaitu sehimpunan keterkaitan antara nama dan atribut objek (binding), seperti user, komputer, services dan remote object, tugasnya untuk me-resolve nama. Name Service memiliki konsentrasi pada aspek penamaan, dan pemetaan antara nama & alamat, bukan pada masalah rute, yg dibahas di Jaringan Komputer.

Resource yang dipakai dalam Name Service adalah: komputer, layanan, remote object, berkas, pemakai. Contoh naming pada aplikasi sistem terdistribusi: URL untuk mengakses suatu halaman web dan Alamat e-mail utk komunikasi antar pemakai.

DAFTAR PUSTAKA

http://iwan.staff.gunadarma.ac.id/Downloads/files/22157/6_Name+Service.pdf Diakses 13 November 2012

http://blogerahman.staff.unisbank.ac.id/files/2011/07/Sist-Terdistribusi-AntonPres10.pdf Diakses 13 November 2012

http://sitialiyah.staff.gunadarma.ac.id/Downloads/files/11437/week8+NameServic e.pdf Diakses 13 November 2012

http://wiwied.staff.gunadarma.ac.id Diakses 13 November 2012