.Dasar Teori
Konsep client-server merupakan dasar dari setiap transaksi yang terjadi pada setiap aplikasi jaringan. Socket merupakan antarmuka antara application process dan transport layer. Setelah sebelumnya kita mempelajari beberapa metode untuk penanganan request dari banyak client ke server, maka muncul pertanyaan Bagaimana Jika kita akan mengirimkan data ke banyak penerima? Ada beberapa solusi yang dapat diterapkan diantaranya adalah menggunakan fasilitas yang disediakan oleh jaringan yaitu broadcast dan multicast. Dalam penerapannya metode broadcast dan multicast sendiri memiliki keterbatasan, yaitu:
- Hanya UDP socket yang dapat melakukan broadcast dan multicast
- Broadcast hanya mencakup lingkup lokal, biasanya jaringan area local (LAN).
- Multicast di seluruh Internet saat ini tidak didukung oleh sebagian besar penyedia layanan Internet.
Broadcast merupakan pengiriman data dengan tujuan semua alamat yang berada dalam 1 jaringan. Aplikasi akan mengirimkan data ke alamat broadcast, apabila data dikirim ke alamat ini maka semua host yang berada dalam jaringan tersebut akan menerima data. Sebelum mengirimkan data ke alamat broadcast, maka kita harus meminta “izin” kepada sistem untuk melakukan broadcast dengan men-set opsi SO_BROADCAST harus pada sisi pengirim. Berbeda dengan broadcast, multicast merupakan pengiriman data dengan tujuan alamat group dalam 1 jaringan. Pada prakteknya dalam pemrograman tidak perlu set permission untuk multicast. Multicast sender dapat men set nilai TTL untuk mengirimkan datagram. Langkah-langkah yang harus dilakukan dalam pemrograman untuk melakukan broadcast maupun multicast pada dasarnya sama dengan pemrograman menggunakan UDP, namun pada broadcast perlu penambahan socket option SO_BROADCAST, sehingga sistem mengizinkan untuk melakukan broadcast.
.Percobaan
Pada program diatas mengimport library socket dan time, pada bagian server terdapat koneksi socket menggunakan UDP kemudian menggunakan reuseport dan broadcast dari library socket , terdapat timeout yaitu delay pesan yang dikirim dan diterima dan terdapat message yang akan dikirimkan ke client. pada program client sama halnya dengan server akan tetapi berbeda pada bind yaitu menghubungkan server dan client , lalu pada client terdapat program recv untuk menerima pesan dari server. pada outputnya akan menampilkan bagian server akan mengirimkan message secara terus menerus selama timeout yang telah di tentukan tadi, kemudian pada client terdapat tampilan message yang diterima oleh server.
Comments
Post a Comment