Minggu, 14 Juni 2020

Networks and Distributed System

Sistem Jaringan Terdistribusi

    Sistem Terdistribusi terdiri dari dua kata yaitu “Sistem” dan “Terdistribusi”. Sistem terdistribusi merupakan sekumpulan elemen yang saling berhubungan satu dengan yang lainnya dan membentuk satu kesatuan untuk menyelesaikan satu tujuan yang spesifik atau menjalangkan sperangkat fungsi. Adapun terdistribusi berasal dari kata “distribusi” yang merupakan lawan kata “sentralisasi” yang artinya penyebaran, sirkulasi, penyerahan, pembagian menjadi bagian-bagian kecil.

Contoh Sistem Terdistribusi :
  1. Intranet Jaringan (proprietary) yang teradministrasi secara lokal dan  dapat terhubung ke internet melalui firewall juga adanya layanan internal dan eksternal didalamnya.
  2. Internet Jaringan global yang menghubungkan komputer satu sama lain dan dapat berkomunikasi dengan media IP sebagai protokol.
  3. World Wide Web Arsiteketur client/server terbuka yang diterapkan di atas infrastuktur internet dan juga shared resources melalui URL.
  4. Mobile dan sistem komputasi ubiguitos Sistem telepon Celullar (e.g. GSM) re. Resources yang dishare : frekuensi radio, waktu transmisi dalam satu frekuensi, bergerak, komputer laptop, ubiquitos computing, handheld devices, PDA, etc
  5. Sistem terdistribusi multimedia biasanya digunakan pada infrastruktur internet - karakteristik Sumber data yang heterogen dan memerlukan sinkronisasi secara real time -video, audio, text Multicast
A. Karakteristik System Terdistribusi
  • Resource Access and Sharing
       Kemampuan menggunakan hardware, software atau data dimanapun dan kapanpun. Karakteristik ini juga yang menentukan siapa saja yang dapat mengakses sebuah resource dalam  sebuah  sistem  terdistribusi.  Salah  satu  contohnya  dalam   sebuah   web,  terdapat .htaccess yang hanya dapat diakses oleh user-user yang telah memiliki grant access terhadap file tersebut.
  • Openness (Keterbukaan)
      Sebuah keterbukaan dalam sistem terdistribusi memiliki pengertian kemampuan sebuah sistem dalam mengembangkan fleksibilitas terhadap peningkatan kinerja sebuah sistem. Seperti penambahan module baru dan ketersediaan extension / plugin yang dapat terkoneksi dengan sistem lain. Contoh karakteristik ini misalkan sebuah aplikasi web banking yang dapat terhubung dengan sistem web milik perusahaan finance.
  • Concurrency
     Semua proses dalam sistem terdistribusi dilakukan secara concurrency (secara bersama-sama). Hal ini dilakukan untuk mencegah inkonsistensi dan ketidak valid an sebuah data dan proses. Sebagai contoh dalam sebuah aplikasi web yang diakses oleh banyak user. Ketika server melakukan sebuah update. Maka semua user yang mengakses halaman web tersebut akan langsung mendapatkan update terbaru tersebut.
  • Scalability
   Skalabilitas memiliki pengertian bahwa sebuah sistem terdistribusi harus dapat ditingkatkan kinerjanya tanpa mengubah komponen-komponen di dalamnya. Sebagai contoh, sebuah aplikasi web yang digunakan oleh user yang terlalu banyak. Maka untuk meningkatkan kinerja dari web tersebut agar tidak terjadi overload atau system down maka perlu dilakukan upgrade processor dan ram. Dalam proses upgrading tersebut, komponen dalam web tidak perlu diubah.
  • Fault Tolerance (Toleransi Kesalahan)
      Kesalahan pasti terjadi dalam sebuah sistem. Entah itu disebabkan karena masalah jaringan, power supply, bencana alam atau human error. Sebuah sistem terdistribusi dirancang memliki kemampuan untuk menangani hal-hal tersebut. Contoh dalam hal ini adalah dibangunnya sebuah clustering server. Dimana ketika server utama mengalami down karena beberapa penyebab kesalahan, maka extended server langsung membackup sistem utama dan menggantikannya.
  • Transparency
    Secara umum, transparansi disini tidak berlaku untuk user biasa yang mengutamakan fungsionalitas, apakah ia sedang menggunakan sistem yang terdistribusi atau tidak. Namun secara khusus bagi seorang pengelola baik itu developer atau administrator sistem sangat perlu untuk mengetahui arsitektur dari sistem yang sedang digunakan karena untuk mempermudah bagi mereka dalam mengembangkan dan memelihara sistem tersebut.

B. Model System Terdistribusi

1.Model Client Server

      Sistem client-server mempunyai satu atau lebih proses client dan satu atau lebih proses server, dan sebuah proses client dapat mengirim query ke sembarang proses server. Client bertanggung jawab pada antar muka untuk user, sedangkan server mengatur data dan mengeksekusi transaksi. Sehingga suatu proses client berjalan pada sebuah personal komputer dan mengirim query ke sebuah server yang berjalan pada mainframe.

    Arsitektur ini menjadi sangat popular untuk beberapa alasan. Pertama, implementasi yang relatif sederhana karena pembagian fungsi yang baik dan karena server tersentralisasi. Kedua, mesin server yang mahal utilisasinya tidak terpengaruh pada interaksi pemakai, meskipun mesin client tidak mahal. Ketiga, pemakai dapat menjalankan antarmuka berbasis grafis sehingga pemakai lebih mudah dibandingkan antar muka pada server yang tidak user- friendly. perlu diingat batasan antara client dan server dan untuk menjaga komunikasi antara keduanya yang berorientasi himpunan.

2. Model Multiple Server

                                                                Gambar 1.1 Model Multiple Server 
Service disediakan oleh beberapa server
Contoh:
  • Sebuah situs yang jalankan dibeberapa server
  • Server menggunakan replikasi atau database terdistribusi
3. Model Proxy Server

Gambar 1.2 Model Proxy Server

     Proxy server menyediakan hasil copy (replikasi) dari resource yang di atur oleh server lain. Biasa nya proxy server di pakai untuk menyimpan hasil copy web resources. Ketika client melakukan request ke sever, hal yang pertama dilakukan adalah memeriksa proxy server apakah yang diminta oleh client terdapat pada proxy server. Proxy server dapat diletakkan pada setiap client atau dapat di pakai bersama client. Tujuannya adalah mengingkatkan performance dan availibity dengan mencegah frekwensi akses ke server.

Proxy server membuat duplikasi beberapa server yang diakses oleh client
 Caching:
  •  Penyimpanan lokal untuk item yang sering diakses
  •  Meningkatkan kinerja
  • Mengurangi beban pada server
3. Model Peer To Peer
   Gambar 1.3 Model Peer To Peer

       Bagian dari model sistem terdistribusi dimana sistem dapat sekaligus berfungsi sebagai client maupun server. Sebuah arsitektur di mana tidak terdapat mesin khusus yang melayani suatu pelayanan tertentu atau mengatur sumber daya dalam jaringan dan semua kewajiban dibagi rata ke seluruh mesin, yang dikenal sebagai peer. Pola komunikasi yang digunakan berdasarkan aplikasi yang digunakan. Peer-to-peer merupakan model yang paling general dan fleksible.

4.Model Mobile Code
Gambar 1.4 Model Mobile Code

Kode yang berpindah dan dijalankan pada pc yang berbeda 
Contoh: Applet

5. Model Mobile Agent

Sebuah program yang berpindah dari satu komputer ke komputer yang lain
  • Melakukan perkerjaan otomatis
Contoh:
  • Untuk install dan pemeliharan software pada komputer sebuah organisasi
C. Permasalahan System Terdistribusi

Keheterogenan 
  • Suatu sistem terdistribusi dapat dibangun dari berbagai n/w, o/s, h/w, & p/l yg berbeda. IP dapat digunakan untuk mengatasi perbedaan jaringan.  Middleware mengatasi perbedaan lainnya.
Keterbukaan
  • Mendukung extensibility-Setiap komponen memiliki antarmuka (interface), yang di publikasi ke komponen lain.
  • Perlu integrasi berbagai komponen yang dibuat oleh programming atau vendor yang berbeda.
Keamanan
  • Shared resources & transmisi informasi rahasia perlu dilengkapi dengan enkripsi.
Scalability
  • Penambahan pemakai membutuhkan penambahan resource yang konstan,Cegah bottleneck jika perlu ,gunakan replikasi.
Penanganan Kegagalan 
  • Setiap proses ( komputer atau jaringan ) dapat mengalami kegagalan secara independen.
  • Komponen lain harus tetap berjalan dengan baik.
Concurrency

  • Multiple users with concurret requests to a shared resources, setiap resources harus aman di lingkungan tersebut di atas.

Transparansi

  • Transparansi: bagi pemakai, keberadaan beberapa komponen tampak sebaaig satu sistem saja. Accesstransparency : Local & remote resources dapat diakses dengan operasi yang sama.
D. Keuntungan Sistem Jaringan Terdistribusi

1. Performance
  • Kumpulan dari beberapa prosesor akan memberikan kinerja yang lebih baik dari pada komputer yang terpusat. Begitu juga kalau dilihat dari sisi biaya.
2. Reliability (Fault tolerance)
  • apabila salah satu komponen terjadi kerusakan, system tetap dapat berjalan
3. Incremental Growth
  • Mudah dalam melakukan penambahan komputer/komponen
4. Sharing Data/Resources
  • Berbagi data adalah salah satu hal yang pokok pada kebanyakan aplikasi
E. Performance & Scalability

1. Performance
Ada beberapa faktor yang mempengaruhi kinerja (performance) dari pada sistem terdistribusi :
  • Kinerja dari pada personal workstations
  • Kecepatan infrastruktur komunikasi
  • Fleksibilitas dalam membagi beban kerja : contoh, apabila terdapat prosesor (workstation) yang idle maka dapat di alokasikan secara otomatis untuk mengerjakan tugas2 user.
2. Scalability
Sistem tetap harus memperhatikan efesiensi walaupun terdapat penambahan secara signifikan user atau sumber daya yang terhubung:
  • Cost (biaya) penambahan sumber daya (resources) harus reasonable.
  • Penurunan kinerja (Performance) diakibatkan oleh penambahan user atau sumber daya harus terkontrol. 

Tidak ada komentar:

Posting Komentar