Pendahuluan
Name Service dalam Sistem Terdistribusi merupakan layanan penamaan yang
berfungsi untuk menyimpan naming context, yakni kumpulan binding nama dengan
objek, tugasnya untuk me-resolve nama.
Pengaksesan resource pada sistem terdistribusi yang memerlukan:
Nama resource (untuk pemanggilan),
Alamat (lokasi resource tsb),
Rute (bagaimana mencapai lokasi tsb).
Hal. 1
Composed Naming Domains to access a resource from a URL
UR
L
http://www.cdk3.net:8888/WebExamples/earth.ht
ml
Resolution via
DNS DNS
lookup Resource ID (IP number, port number,
pathname)
55.55.55.5 888 WebExamples/earth.ht
5 8 ml
Resolution via
ARP Web
Network server
address
2:60:8c:2:b0:5
a file
Socke
t
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 dengan
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 & banyak digunakan karena:
• Location & application independent, shg 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.
Hal. 2
– Membawa informasi -> impure names.
– Biasanya tidak secara unik mengidentifikasikan obyek, beberapa nama
bisa dipetakan ke satu obyek (e.g. 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.
– E.g. 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 tsb 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.
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.
Hal. 3
• Nama unik merupakan keharusan. Kenapa?
• Tidak scalable: Masih bisa ditolerir untuk LAN, tapi bagaimanakah pada sistem
yang lebih luas?
Name lists.
Network
Name Servers
Name Servers menyimpan pemetaan nama ke alamat untuk setiap obyek dalam
sistem, I.e. 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).
Hal. 4
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.
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’.
Kelebihan:
– Tidak perlu suatu central name server, di mana seluruh station tergantung pada
name server tsb.
Hal. 5
– 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 Resolution
Yaitu diberikan nama obyek , 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.
Hal. 6
Non-recursive and Recursive
Server-controlled Navigation
NS2 NS2
2 2
4 3
1 1
NS1 NS1
client client
4 3 5
NS3 NS3
Non-recursive Recursive
server-controlled server-controlled
A name server NS1 communicates with other name servers on behalf of a client
Rekursif
Agen
N.S. N.S. N.S.
t
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. Bagaimana jika rasio antara agent & server cukup besar?
Iterative Navigation
NS
2
2
Nam
1 NS server
e
Clien
1 s
t
3
NS
3
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.
Hal. 7
Transitive Navigation
N.S.
Agen
t N.S.
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. Kelebihan: berkurangnya
pengiriman pesan, server tidak perlu menyimpan status on going resolution.
Kekurangan: pengirim tidak menerima ACK.
Hal. 8