Jumat, 27 Mei 2016

Program Sederhana Mendapakan IP Address & Host Name dengan Bahasa Pemrograman Java


Nama                    : Dimas Cipta Sumirat
NPM                      : 52412123
Kelas                     : 4IA25
Mata Kuliah       : Pemrograman Jaringan


1.       Program Get IP

ØListing Program


















Listing program diatas adalah listing untuk mendapatkan IP address yang terdaftar di PC yang saya gunakan. Saya menggunakan bahasa pemrograman Java. Untuk menjalankan programnya yaitu saya buka Command prompt (cmd) lalu masuk ke direktori yang dituju. Setelah itu compile dengan ketik javac namafle.java dan jalankan jika tidak ada error dengan namafile.java

Ø  Output







2.       Program GetName

ØListing Program

Listing program diatas adalah listing untuk mendapatkan hostname pada PC, dengan cara memanggil local host dari komputer user dan akan mencetak kalimat "Nama Komputer Anda : 'nama komputer'. Untuk menjalankan programnya yaitu saya buka Command prompt (cmd) lalu masuk ke direktori yang dituju. Setelah itu compile dengan ketik javac namafle.java dan jalankan jika tidak ada error dengan namafile.java

ØOutput







3.       Program GetName

ØListing Program

Listing program di atas adalah untuk mendapatkan nama pc dengan menyebutkan ip pada pc yang kita gunakan. Pertama dihitung panjang nama pc tersebut dan dideklarasikan string host dan inet addres dset 0, lalu akan mencetak invalid jika ipnya invalid, dan akan mencetak nama jika benar ip yang disebutkan.

ØOutput



4.       Program NSLookup

ØListing Program

Pada listing program diatas adalah untuk menjelaskan bahwa kelas tersebut bernama NSLookup, kemudian program tersebut berfungsi untuk mengetahui alamat IP Address yang terhubung dengan jaringan internet. Contoh, saya ingin mengetahui alamat  IP Address pada blogspot.

ØOutput



Penjelasan Web Proxy, Web Server, DNS Server, Mail Server


Nama : Dimas Cipta Sumirat
NPM   : 5241213
Kelas  : 4IA25
Mata kuliah : Pemrograman Jaringan


1. Web Proxy

     Web proxy adalah website berbasis proxy server dan berfungsi sebagai perantara antara client dengan web tujuan sehingga dalam proses pengiriman data, ip address tidak terdeteksi karena telah disembunyikan terlebih dahulu oleh proxy

Dengan adanya web proxy maka anda dapat menghemat bandwidth dan menambah kecepatan pada saat browsing internet karena web proxy mempunyai kemampuan untuk menyimpan data ke storage local sehingga jika ada client lain yang membuka situs yang sama, maka isi website sebagian besarnya di ambil dari storage local server selain itu juga web proxy mempunyai kemampuan untuk memblokir situs terlarang, seperti situs judi ataupun pornografi. Web Proxy dibagi menjadi 2 bagian yaitu :
  • Nontransparent web proxy
Seorang client dapat memilih untuk menggunakan/tidak fasilitas web proxy yang disediakan oleh server. Web proxy biasanya sudah di set oleh para administrator dan siap untuk digunakan.
  • Transparent web proxy
Jika pada nontransparent client dapat memilih untuk menggunakan/tidak fasilitas web proxy yang ada namun pada transparent web proxy seorang client dipaksa untuk menggunakannya sehingga seorang client (user) tidak perlu melakukan setting apapun di web browser yang mereka gunakan karena pengaturan hanya dilakukan oleh server saja dan secara otomatis client akan menggunakan web proxy. Seorang user yang sedang browsing (request port 80) maka dia akan dibelokan terlebih dahulu menuju proxy.

2. Web Server
Web server merupakan software yang memberikan layanan data yang berfungsi menerima permintaan HTTPatau HTTPS dari klien yang dikenal dengan browser web dan mengirimkan kembali hasilnya dalam bentuk halaman – halaman web yang umumnya berbentuk dokumen HTML.

Fungsi Web Server

Fungsi utama sebuah server web adalah untuk mentransfer berkas atas permintaan pengguna melalui protokol komunikasi yang telah ditentukan. Disebabkan sebuah halaman web dapat terdiri atas berkas teks, gambar, video, dan lainnya pemanfaatan server web berfungsi pula untuk mentransfer seluruh aspek pemberkasan dalam sebuah halaman web yang terkait, termasuk di dalamnya teks, gambar, video, atau lainnya.

Pengguna, biasanya melalui aplikasi pengguna seperti peramban web, meminta layanan atas berkas ataupun halaman web yang terdapat pada sebuah server web, kemudian server sebagai manajer layanan tersebut akan merespon balik dengan mengirimkan halaman dan berkas-berkas pendukung yang dibutuhkan, atau menolak permintaan tersebut jika halaman yang diminta tidak tersedia.

Saat ini umumnya server web telah dilengkapi pula dengan mesin penerjemah bahasa skrip yang memungkinkan server web menyediakan layanan situs web dinamis dengan memanfaatkan pustaka tambahan seperti PHP, dan ASP.

Pemanfaatan server web saat ini tidak terbatas hanya untuk publikasi situs web dalam World Wide Web, pada prakteknya server web banyak pula digunakan dalam perangkat-perangkat keras lain seperti printer, router, kamera web yang menyediakan akses layanan http dalam jaringan lokal yang ditujukan untuk menyediakan perangkat manajemen serta mempermudah peninjauan atas perangkat keras tersebut.

Cara Kerja Web Server
  1. Cara kerja Web Server, Web server merupakan mesin dimana tempat aplikasi atau software beroperasi dalam medistribusikan web page ke user, tentu saja sesuai dengan permintaan user.
  2. Hubungan antara Web Server dan Browser Internet merupakan gabungan atau jaringan Komputer yg ada di seluruh dunia. Setelah terhubung secara fisik, Protocol TCP/IP (networking protocol) yg memungkinkan semua komputer dapat berkomunikasi satu dengan yg lainnya. Pada saat browser meminta data web page ke server maka instruksi permintaan data oleh browser tersebut di kemas di dalam TCP yg merupakan protocol transport dan dikirim ke alamat yg dalam hal ini merupakan protocol berikutnya yaitu Hyper Text Transfer Protocol (HTTP). HTTP ini merupakan protocol yg digunakan dalam World Wide Web (WWW) antar komputer yg terhubung dalam jaringan di dunia ini. Untuk mengenal protocol ini jelas sangan mudah sekali dimana setiap kali anda mengetik http://… anda telah menggunakannya, dan membawa anda ke dunia internet. Data yg di passing dari browser ke Web server disebut sebagai HTTP request yg meminta web page dan kemudian web server akan mencari data HTML yg ada dan di kemas dalam TCP protocol dan di kirim kembali ke browser. Data yg dikirim dari server ke browser disebut sebagai HTTP response. Jika data yg diminta oleh browser tidak ditemukan oleh si Web server maka akan meninbulkan error yg sering anda lihat di web page yaitu Error : 404 Page Not Found. 

Ini akan memberikan suatu proses yang tridimensional, artinya pengguna internet dapat membaca dari satu dokumen ke dokumen yang lain hanya dengan mengklik beberapa bagian dari halaman-halaman dokumen (web) itu. Proses yang dimulai dari permintaan webclient (browser), diterima web server, diproses, dan dikembalikan hasil prosesnya oleh web server ke web client lagi dilakukan secara transparan. Setiap orang dapat dengan mudah mengetahui apa yang terjadi pada tiap-tiap proses. Secara garis besarnya web server hanya memproses semua masukan yang diperolehnya dari web clientnya.

3. DNS Server
DNS adalah kepanjangan dari Domain Name System (DNS server), yaitu nama sebuah sistem database yang berguna untuk memenuhi kebutuhan komputer, layanan/sumber daya yang terhubung ke dalam jaringan internet/jaringan komputer pribadi. Atau definisi lainnya adalah merupakan sistem database yang terdistribusi, digunakan sebagai pencarian nama komputer di dalam jaringan yang menggunakan TCP/IP. DNS memiliki kelebihan ukuran database yang tak terbatas serta mempunyai performa cukup baik.

Fungsi DNS adalah :
  • Menerjemahkan nama host (hostnames), jadi nomor IP address atau sebaliknya, sehingga nama-nama tersebut mudah diingat oleh para pengguna internet.
  • Memberikan suatu informasi mengenai suatu host kepada seluruh jaringan internet. DNS mempunyai keunggulan misalnya seperti: DNS sangat mudah sebab user tak lagi direpotkan untuk mengingat IP (IP address) sebuah komputer/pc cukup host name. Konsisten, IP (IP address) sebuah komputer boleh saja berubah akan tetapi host name tidak boleh berubah.

4. Mail Server

Mail Server atau disebut juga sebagai e-mail server, digunakan untuk mengirimkan surat elektronik melalui media internet. Keberadaan email membuat pekerjaan pengiriman surat jadi lebih cepat dan efisien. Untuk membuat mail server harus terdapat SMPT (Simple mail Transfer Protocol) dan POP (Post office Protocol) yang digunakan untuk mengirim dan menerima surat elektronik.

Cara Kerja Mail Server



Proses Pengiriman Email bisa terjadi karena adanya SMTP (Simple mail Transfer Protocol). setelah dikirim email tersebut akan ditampung sementara di POP (Post office Protocol). Ketika user email akun sedang online, secara otomatis mail client melakukan sinkronisasi dari POP.

Penjelasan Mail Server

  • Courier-IMAP
Courier-IMAP merupakan software yang digunakan untuk mengambil email yang ada pada server mail kita. Software ini akan memberikan kita akses pop3 dan imap, protokol ini merupakan protokol server-client yang berguna untuk mengambil email dari server mail kita. courier mendukung mode pop3 dan imap. pada pop3 pengambilan email akan menghilangkan email yang ada pada server, sedangkan pada mode imap pengambilan email tidak akan menghilangkan email pada server.

  • Squirrelmail
Squirrelmail merupakan aplikasi webmail berbasis PHP yang popular. Instalasi dan konfigurasinya cukup mudah serta bisa ditambahkan plugin pendukungnya. Menurut file INSTALL dari distribusi Squirrelmail, software ini membutuhkan php4 yang minimal dikompilasi denga opsi enable-track-var-enable-force-cgi-redirect-with-gettext serta membutuhkan register global=On dan File uploads=On di php.ini (Jika php anda menggunakan default RPM Redhat file php.ini terletak di directory /etc). Download dan ekstrak paket squirrelmail terlebih dahulu kemudian baru di install.

5. PHP

PHP adalah bahasa pemrograman script server-side yang didesain untuk pengembangan web. Selain itu, PHP juga bisa digunakan sebagai bahasa pemrograman umum (wikipedia). PHP di kembangkan pada tahun 1995 oleh Rasmus Lerdorf, dan sekarang dikelola oleh The PHP Group. Situs resmi PHP beralamat di http://www.php.net.

PHP disebut bahasa pemrograman server side karena PHP diproses pada komputer server. Hal ini berbeda dibandingkan dengan bahasa pemrograman client-side seperti JavaScript yang diproses pada web browser (client).

Pada awalnya PHP merupakan singkatan dari Personal Home Page. Sesuai dengan namanya, PHP digunakan untuk membuat website pribadi. Dalam beberapa tahun perkembangannya, PHP menjelma menjadi bahasa pemrograman web yang powerful dan tidak hanya digunakan untuk membuat halaman web sederhana, tetapi juga website populer yang digunakan oleh jutaan orang seperti wikipedia, wordpress, joomla, dll.

Saat ini PHP adalah singkatan dari PHP: Hypertext Preprocessor, sebuah kepanjangan rekursif, yakni permainan kata dimana kepanjangannya terdiri dari singkatan itu sendiri: PHP: Hypertext Preprocessor.

PHP dapat digunakan dengan gratis (free) dan bersifat Open Source. PHP dirilis dalam lisensi PHP License, sedikit berbeda dengan lisensi GNU General Public License (GPL) yang biasa digunakan untuk proyek Open Source.

Kemudahan dan kepopuleran PHP sudah menjadi standar bagi programmer web di seluruh dunia. Menurut wikipedia pada februari 2014, sekitar 82% dari web server di dunia menggunakan PHP. PHP juga menjadi dasar dari aplikasi CMS (Content Management System) populer sepertiJoomla, Drupal, dan WordPress.

Fungsi PHP dalam Pemrograman Web

Untuk membuat halaman web, sebenarnya PHP bukanlah bahasa pemrograman yang wajib digunakan. Kita bisa saja membuat website hanya menggunakan HTML saja. Web yang dihasilkan dengan HTML (dan CSS) ini dikenal dengan website statis, dimana konten dan halaman web bersifat tetap.

Sebagai perbandingan, website dinamis yang bisa dibuat menggunakan PHP adalah situs web yang bisa menyesuaikan tampilan konten tergantung situasi. Website dinamis juga bisa menyimpan data ke dalam database, membuat halaman yang berubah-ubah sesuai input dariuser, memproses form, dll.

Untuk pembuatan web, kode PHP biasanya di sisipkan kedalam dokumen HTML. Karena fitur inilah PHP disebut juga sebagai Scripting Language atau bahasa pemrograman script.



Sumber :



Rabu, 11 Mei 2016

Quantum Computation

Nama           : Dimas Cipa Sumirat
Kelas            : 4IA25
NPM             : 52412123


Mata Kuliah   : Pengantar Komputasi Modern

 




Quantum Computation


Quantum Computation merupakan alat hitung yang menggunakan mekanika kuantum seperti superposisi dan keterkaitan, yang digunakan untuk peng-operasi-an data. Perhitungan jumlah data pada komputasi klasik dihitung dengan bit, sedangkan perhitungan jumlah data pada komputer kuantum dilakukan dengan qubit. Prinsip dasar komputer kuantum adalah bahwa sifat kuantum dari partikel dapat digunakan untuk mewakili data dan struktur data, dan bahwa mekanika kuantum dapat digunakan untuk melakukan operasi dengan data ini. Dalam hal ini untuk mengembangkan komputer dengan sistem kuantum diperlukan suatu logika baru yang sesuai dengan prinsip kuantum.



a. Entanglement

Entanglement adalah efek mekanik kuantum yang mengaburkan jarak antara partikel individual sehingga sulit menggambarkan partikel tersebut terpisah meski Anda berusaha memindahkan mereka. Quantum entanglement adalah bagian dari fenomena quantum mechanical yang menyatakan bahwa dua atau lebih objek dapat digambarkan mempunyai hubungan dengan objek lainnya walaupun objek tersebut berdiri sendiri dan terpisah dengan objek lainnya. Quantum entanglement merupakan salah satu konsep yang membuat Einstein mengkritisi teori Quantum mechanical. Einstein menunjukkan kelemahan teori Quantum Mechanical yang menggunakan entanglement merupakan sesuatu yang “spooky action at a distance” karena Einstein tidak mempercayai bahwa Quantum particles dapat mempengaruhi partikel lainnya melebihi kecepatan cahaya. Namun, beberapa tahun kemudian, ilmuwan John Bell membuktikan bahwa “spooky action at a distance” dapat dibuktikan bahwa entanglement dapat terjadi pada partikel-partikel yang sangat kecil.



b. Pengoperasian Data Qubit

Qubit merupakan kuantum bit , mitra dalam komputasi kuantum dengan digit biner atau bit dari komputasi klasik. Sama seperti sedikit adalah unit dasar informasi dalam komputer klasik, qubit adalah unit dasar informasi dalam komputer kuantum . Dalam komputer kuantum, sejumlah partikel elemental seperti elektron atau foton dapat digunakan (dalam praktek, keberhasilan juga telah dicapai dengan ion), baik dengan biaya mereka atau polarisasi bertindak sebagai representasi dari 0 dan / atau 1. Setiap partikel-partikel ini dikenal sebagai qubit, sifat dan perilaku partikel-partikel ini (seperti yang diungkapkan dalam teori kuantum ) membentuk dasar dari komputasi kuantum. Dua aspek yang paling relevan fisika kuantum adalah prinsip superposisi dan Entanglement.



c. Quantum Gates

Quantum Logic Gates, Prosedur berikut menunjukkan bagaimana cara untuk membuat sirkuit reversibel yang mensimulasikan dan sirkuit ireversibel sementara untuk membuat penghematan yang besar dalam jumlah ancillae yang digunakan.

1.    Pertama mensimulasikan gerbang di babak pertama tingkat.

2.    Jauhkan hasil gerbang di tingkat d / 2 secara terpisah.

3.    Bersihkan bit ancillae.

4.    Gunakan mereka untuk mensimulasikan gerbang di babak kedua tingkat.

5.    Setelah menghitung output, membersihkan bit ancillae.

6.    Bersihkan hasil tingkat d / 2.



d. Algoritma Shor

Algoritma Shor, dinamai matematikawan Peter Shor , adalah algoritma kuantum yaitu merupakan suatu algoritma yang berjalan pada komputer kuantum yang berguna untuk faktorisasi bilangan bulat. Algoritma Shor dirumuskan pada tahun 1994.

Algoritma Shor terdiri dari dua bagian:

1.    Penurunan yang bisa dilakukan pada komputer klasik, dari masalah anjak untuk masalah ketertiban -temuan.

2.    Sebuah algoritma kuantum untuk memecahkan masalah order-temuan.

Hambatan runtime dari algoritma Shor adalah kuantum eksponensial modular yang jauh lebih lambat dibandingkan dengan kuantum Transformasi Fourier dan pre-/post-processing klasik. Ada beberapa pendekatan untuk membangun dan mengoptimalkan sirkuit untuk eksponensial modular. Yang paling sederhana dan saat ini yaitu pendekatan paling praktis adalah dengan menggunakan meniru sirkuit aritmatika konvensional dengan gerbang reversibel , dimulai dengan penambah ripple-carry. Sirkuit Reversible biasanya menggunakan nilai pada urutan n ^ 3, gerbang untuk n qubit. Teknik alternatif asimtotik meningkatkan jumlah gerbang dengan menggunakan kuantum transformasi Fourier , tetapi tidak kompetitif dengan kurang dari 600 qubit karena konstanta tinggi.



Referensi :





Parallel Computation


Nama              : Dimas Cipta Sumirat  

NPM                : 5241213

Kelas                : 4IA25

Mata Kuliah    :Pengantar Komputasi Modern

 




 Parallel Computation

2.1 Parallelism Concept

     Parallel Computation atau Komputasi paralel adalah salah satu teknik melakukan komputasi secara bersamaan dengan memanfaatkan beberapa komputer independen secara bersamaan. Ini umumnya diperlukan saat kapasitas yang diperlukan sangat besar, baik karena harus mengolah data dalam jumlah besar ataupun karena tuntutan proses komputasi yang banyak. Kasus kedua umum ditemui di kalkulasi numerik untuk menyelesaikan persamaan matematis di bidang fisika (fisika komputasi), kimia (kimia komputasi) dll. Parallel computing muncul ketika komputer membawa lebih dari satu task secara simultan (bersamaan). Teknik ini dapat memungkinkan komputer bekerja secara lebih cepat dibandingkan dengna melakukannya secara sekaligus, seperti halnya seseorang dengan dua tangan dapat menyelesaikan lebih banyak pekerjaan dengan orang yang hanya menggunakan satu tangan saja.

Gambar diatas merupakan contoh dari sebuah komputasi paralel, dimana pada gambar diatas terdapat sebuah masalah, dari masalah tersebut dibagi lagi menjadi beberapa bagian agar sebuah masalah dapat dengan cepat diatasi.

2.2  Tujuan Komputasi Paralel

Tujuan dari komputasi paralel adalah meningkatkan kinerja komputer dalam menyelesaikan berbagai masalah. Dengan membagi sebuah masalah besar ke dalam beberapa masalah kecil, membuat kinerja menjadi cepat.
Formula komputasi paralel yang diajukan pada hukum Amdahl.

Dimana a adalah banyaknya paralel yang terjadi. Secara teori, artinya proses penyelesaian masalah menjadi lebih cepat dengan menggunakan komputasi paralel.
Salah satu jenis penggunaan komputasi paralel adalah:

2.3 Distributed Processing

Distributed Processing adalah kemampuan mengerjakan semua proses pengolahan data secara bersama antara komputer pusat dengan beberapa komputer yang lebih kecil dan saling dihubungkan melalui jalur komunikasi. Setiap komputer tersebut memiliki prosesor mandiri sehingga mampu mengolah sebagian data secara terpisah, kemudian hasil pengolahan tadi digabungkan menjadi satu penyelesaian total. Jika salah satu prosesor mengalami kegagalan atau masalah maka prosesor yang lain akan mengambil alih tugasnya

2.4 Architectural Parallel Computer

Arsitektur paralel komputer menurut Klasifikasi Flynn’s :

·         SISD (Single Instruction Single Datapath) merupakan prosesor tunggal, yang bukan paralel. 

·         SIMD (Single Instruction Multiple Datapath)alur instruksi yang sama dijalankan terhadap banyak alur data yang berbeda. Alur instruksi di sini kalau tidak salah maksudnya ya program komputer itu. trus datapath itu paling ya inputnya, jadi inputnya lain-lain tapi program yang digunakan sama. 

·         MIMD (Multiple Instruction Multiple Datapath)alur instruksinya banyak, alur datanya juga banyak, tapi masing-masing bisa berinteraksi.

·         MISD (Multiple Instruction Single Datapath)alur instruksinya banyak tapi beroperasi pada data yang sama.

Sumber: