Selasa, 28 Juli 2020

Network Address Translation (NAT)

Edit Posted by with No comments
Pengertian NAT Beserta Fungsi dan Cara Kerja NAT dalam Jaringan Komputer
Setiap kali sesorang berselancar di internet menggunakan komputer, sebetulnya komputer tersebut haruslah memiliki alamat IP yang telah terdaftar melalui ISP. Alamat IP yang diperuntukkan oleh publik (pengguna komputer) ini cukup terbatas, dan semakin hari jumlahnya pun semakin menipis.
Untuk itulah kemudian hadir sistem NAT untuk mengatasi masalah jumlah alamat IP yang semakin menipis ini. Tak hanya itu, NAT pun memiliki fungsi dan keunggulan lain yang membuatnya diperlukan banyak orang.

Pengertian NAT

Network Address Translation (NAT) merupakan sebuah sistem untuk menggabungkan lebih dari satu komputer untuk dihubungkan ke dalam jaringan internet hanya dengan menggunakan sebuah alamat IP. Sehingga setiap komputer di dalam NAT ketika berselancar di internet akan terlihat memiliki alamat IP yang sama jika dilacak. Dengan kata lain, sebuah alamat IP pada jaringan lokal akan terlebih dahulu ditranslasikan oleh NAT untuk dapat mengakses IP publik di jaringan komputer. Sebelum proses translasi ini, maka pengguna tidak dapat terhubung ke internet.
Banyak yang berpendapat bahwa NAT sebetulnya mirip dengan proxy server, namun bedanya adalah jika proxy server menyediakan mekanisme caching, tak begitu halnya dengan NAT. Sehingga dengan penggunaan NAT, tidak ada batasan mengenai jumlah halaman web yang dapat diakses.
Cukup banyak pengguna NAT yang memanfaatkan sistem ini, bisa jadi dikarenakan ketersediaan alamat IP yang terbatas, membutuhkan keamanan lebih, atau ada pula yang menggunakan NAT karena dinilai lebih fleksibel dalam hal administrasi jaringan, sebab jaringan NAR didesain menyederhanakan alamat IP dan untuk melindunginya.

Kamis, 06 Februari 2020

ARRAY

Edit Posted by with No comments

ARRAY
Dalam pemrograman, terkadang Anda harus mendeklarasikan banyak variabel dengan nama yang hampir sama, contohnya nomor1, nomor2, … , nomor10, dan seterusnya. Nah, untuk mempersingkat coding yang dibuat, lebih baik Anda menggunakan array. Array (atau larik dalam Bahasa Indonesia) adalah sebuah tipe data bentukan yang terdiri dari sejumlah komponen dengan tipe yang sama.
Dengan menggunakan array, Anda dapat menyimpan banyak data dengan satu nama. Namun, ada beberapa hal yang perlu Anda ketahui tentang array, diantaranya:
§  Nomor index pada Array selalu dimulai dari nol (0).
§  Array hanya mampu menyimpan data dengan tipe yang sama. Artinya, semua isi array harus memiliki tipe data yang sama.
Ketika Anda mendeklarasikan array ke dalam compiler, maka perumpamaannya Anda sedang menciptakan sebuah hotel dengan masing-masing nomor kamar yang tersedia. Setelah Anda berhasil mendeklarasikan array, maka Anda bisa mulai memberikan nilai untuk setiap kamar yang tersedia di dalam “hotel” yang tadi Anda buatan.
Tipe-tipe data yang dapat digunakan di dalam array diantaranya sebagai berikut: int, char, double, string, dan boolean.
Array sendiri terdiri dari dua jenis, diantaranya adalah sebagai berikut:
§  Array satu dimensi, jenis array satu ini dapat Anda asumsikan sebagai sebuah deretan data
§  Array dua dimensi (multi dimensi), array ini dapat mewakili suatu bentuk tabel atau matriks. Dimana indeks yang pertama menunjukkan baris, lalu indeks yang kedua menunjukkan kolom dari tabel atau matriks.
Bentuk umum dalam penulisan array adalah sebagai berikut:
Nama_larik : Array [indeks_baris,Indeks_Kolom] of Tipe_Array;

Ada sedikit catatan yang harus Anda perhatikan dalam penulisan array, diantaranya:
§  Tipe Data. Tipe data yang digunakan pada array adalah tipe data primitif.
§  Nama Array. Saat Anda memberikan nama untuk array yang akan dibuat, Anda dapat membuatnya sesuka hati Anda
§  Ukuran Array. Array digunakan untuk menentukan banyak index. Oleh karena itu, Anda bisa menentukan ukuran array yang dibuat sesuai kebutuhan anda. Namun harus lebih dari 0.
Untuk menerapkan array ke dalam program, Anda bisa menggunakan macam-macam bahasa pemrograman. Salah satu bahasa pemrograman yang bisa Anda pakai adalah bahasa pemrograman C++. Sebagai bahasa yang tingkatan bahasa pemrograman-nya tinggi, C++ bisa digunakan untuk mengaplikasikan penggunaan array secara mudah.
Pada kesempatan kali ini, kami akan memberikan informasi seputar contoh program array C++ sederhana. Oh iya, untuk mendeklarasikan sebuah array pada C++, Anda hanya perlu menuliskannya dengan format berikut:
tipe_data nama_array [ ukuran_array ];

Baiklah, berikut ini kami berikan contoh-contohnya untuk Anda:
Contoh 1: Pendeklarasian tipe data array pada program C++
Dalam mendeklarasikan sebuah array, Anda bisa menuliskannya sebagai berikut:
int daftarNilai [20];

Selain itu, Anda dapat melakukan inisialisasi terhadap array atau memberikan nilai awal, seperti halnya contoh berikut:
int daftarNilai [5] = {10,9,10,8,9};

Sedikit catatan, jumlah inisialisasi pada array tidak boleh melebihi ukuran array. Namun, Anda juga dapat mendeklarasikan array sekaligus memberikan inisialisasi tanpa harus memberikan tambahan deklarasi ukuran array. Contohnya adalah sebagai berikut:
int daftarNilai [] = {10,9,8,10,9};

Contoh Program C++ Array 1 Dimensi
Cara mendeklarasikan array 1 dimensi pada C++ adalah menggunakan format berikut ini:
tipedata [totalindex];
atau bisa ditulis seperti berikut
tipedata [] = { nilai1, nilai2, dst };

Jadi, ada dua cara mendeklarasikan array berdimensi satu. Pertama, Anda cukup menuliskannya dengan menggunakan tipe data dan total index yang diinginkan, contoh penggunaannya adalah sebagai berikut:
int umur[5];

Penjelasan dari coding di atas, Anda akan menyediakan varibel array bernama umur dengan tipe data integer yang mampu menampung 5 data yang sama mulai dari index 0 – 4 (Ingat: Index pada array selalu dimulai dari nol).
Kemudian untuk mengisi nilai untuk tiap index pada array, Anda bisa menuliskannya dengan cara sebagai berikut:
umur[0] = 18;
umur[1] = 19;
umur[2] = 20;
umur[3] = 21;
umur[4] = 22;
Sedangkan cara kedua, Anda bisa langsung memberi nilai untuk tiap index ketika pendeklarasian array. Contoh kodenya adalah sebagai berikut:
int umur[] = {18,19,20,21,22};

Untuk penerapan array dalam program, biasanya akan dipadukan dengan perulangan for, while-do, atau do-while. Anda bisa memilih salah satu dari mereka, namun yang paling umum digunakan adalah for.
Berikut ini adalah contoh program sederhana array satu dimensi pada program C++:
#include <iostream>
using namespace std;
int umur[] = {18, 19, 20, 21, 22};
int n, hasil=0;
int main ()
{
for ( n=0 ; n<5 ; ++n )
{
hasil+= umur[n];
}
cout << hasil;
return 0;
}

Penjelasan: Program di atas akan menjumlahkan nilai dari tiap index umur dan hasilnya akan disimpan ke dalam variabel hasil. Selanjutnya, variabel hasil tersebut ditampilkan di akhir program.
Contoh Program C++ Array 2 Dimensi
Sama halnya dengan array 1 dimensi, array 2 dimensi juga memiliki cara yang sama dalam pendeklarasiannya. Penulisan deklarasi array 2 dimensi adalah sebagai berikut:
tipedata [totalbaris][totalkolom];

Oleh karena itu, ada sedikit perbedaan dalam pemberian nilai array 2 dimensi ketimbang pada array 1 dimensi. Berikut ini formatnya:
namatabel [indexbaris][indexkolom] = nilai;

Sehingga untuk memberi nilai pada array 2 dimensi secara manual, akan menjadi seperti berikut:
tabel[0][0]= 1;
tabel[0][1]= 2;
tabel[0][2]= 3;
tabel[0][3]= 4;
tabel[0][4]= 5;
tabel[1][0]= 2;
tabel[1][1]= 4;
tabel[1][2]= 6;
tabel[1][3]= 8;
tabel[1][4]= 10;
tabel[2][0]= 3;
tabel[2][1]= 6;
tabel[2][2]= 9;
tabel[2][3]= 12;
tabel[2][4]= 15;

Sebagai catatan, Anda dapat menggunakan looping bersarang untuk mengakses array dua dimensi. Hal tersebut karena array dua dimensi seperti sebuah tabel dengan baris dan kolom.
Berikut ini merupakan contoh program array C++ sederhana untuk jenis array 2 dimensi:
#include <iostream>
using namespace std;
int x,y;
int tabel[3][5] = {
{1, 2, 3, 4, 5},
{2, 4, 6, 8, 10},
{3, 6, 9, 12, 15}
};
int main ()
{
for (x=0; x<3; x++)
for (y=0; y<5; y++)
{
cout << tabel[x][y] << " ";
}
cout << "\n";
}

Penjelasan: Dalam contoh program array C++ sederhana di atas, Anda dapat mendeklarasikan variabel x dan y sebagai iterator. Lalu Anda mendeklarasikan varibel “tabel” dengan tipe array dua dimensi, dimana dapat diibaratkan sebuah tabel dengan jumlah baris = 3 dan jumlah kolom = 5. Selain itu, Anda langsung melakukan inisialisasi pada array tersebut. Lalu, dalam program utama, Anda menggunakan nested loop dengan fungsi for untuk mengakses baris dan kolom secara otomatis supaya dapat mencetak isi array “tabel”.
Contoh Array 1 Dimensi Lainnya
#include <iostream>
using namespace std;
int main()
{
int nilai[4]={3,5,7,8};
cout<<nilai[0]<<endl;
cout<<nilai[1]<<endl;
cout<<nilai[2]<<endl;
cout<<nilai[3]<<endl;
}

Contoh Array 2 Dimensi Lainnya
#include <iostream>
using namespace std;
int main( )
{
int matriks [2][4] = {{1,2,3,4},{5,6,7,8}};
int baris, kolom;
for (baris=0;baris<2;baris++)
{
for (kolom=0;kolom<4;kolom++)
{
cout<<matriks[baris][kolom]<<" ";
}
cout<<endl;
}
}

Contoh lain
#include <iostream>
using namespace std;
int main()
{
char nama[100][100];
int nilai[100];
int no;
cout<<"masukkan jumlah mahasiswa: ";
cin>>no;
//input data
for (int i=1;i<=no;i++){
cout<<"masukkan nama mahasiswa: ";
cin>>nama[i];
cout<<"masukkan nilai mahasiswa: ";
cin>>nilai[i];
}
//menampilkan data
cout<<"tampilkan data"<<endl;
for (int a=1;a<=no;a++){
cout<<"nama: "<<nama[a]<<" dengan nilai: "<<nilai[a]<<endl;
cout<<"by fian panic"<<endl;
}
return 0;
}

Penjelasan: Pada contoh di atas, untuk memasukkan nilai ke dalam array, kita menggunakan cara perulangan for. Dimana perintah tersebut akan terus berulang dan menjalankan perintah input data jika nilai variabel “i” kurang atau sama dengan nilai variabel “no” (jumlah mahasiswa). Jika nilai variable i sudah lebih dari variabel “no”, maka program tersebut akan menghentikan perulangan dan mengeksekusi kode selanjutnya.
Bagaimana proses pemasukan data ke dalam array variabel nama dan nilai? karena i=1 dan terus ditambah 1 setiap perulangan, maka karakter “i” dalam tanda kurung siku dimasukkan ke array variabel “nama[i]”, dan “nilai[i]” akan mengikuti nilai dari variable “i”. Sehingga ketika nilai “i” bernilai 1, maka program akan memasukkan data ke variable “nama[1]” dan”nilai[1]”. Lalu ketika nilai “i” bernilai 2, maka program akan memasukkan data ke variable “nama[2]” dan “nilai[2]”, dan seterusnya hingga perulangan berakhir. Nomor apapun yang berada dalam kurung siku seperti pada “nama[2]”, bisa dikatakan rangkaian ke-2 dari variabel “nama”, bukan isi dari variabel “nama”.
Hal tersebut juga sama ketika program hendak menampilkan data dari array tersebut. Yang diubah hanyalah yang tadinya “cin” untuk memasukkan data, menjadi “cout” yang digunakan untuk menampilkan data.


Kamis, 31 Oktober 2019

Edit Posted by with No comments
BENTUK JARINGAN NIRKABEL

1. JARINGAN AD-HOC
    Ad hoc Network adalah salah satu jenis jaringan Wireless Local Area Network (WLAN) yang terdiri dari sekumpulan node-node yang berkomunikasi satu sama lain secara langsung tanpa melibatkan node perantara seperti access point. Setiap node pada jaringan ad-hoc memiliki interface wireless. 

Karakteristik Jaringan Ad Hoc
Pada jaringan ad hoc, node - node tidak hanya berperan sebagai pengirim dan penerima data, namun dapat berperan sebagai penunjang node yang lainnya, misalnya mempunyai kemampuan layaknyarouter. Dengan demikian diperlukan adanya routing protokol dalam jaringan Ad Hoc untuk menunjang proses kirim terima antar node-nodenya. Berikut merupakan beberapa karakteristik pada jaringan Ad Hoc :

  • Dynamic topology - Sifat node yang mobile, maka topologi jaringannya sewaktu - waktu dapat berupa. Sebagai akibatnya routing protocol mempunyai masalah yang lebih kompleks dibandingkan dengan jaringan wired dengan node yang tetap.
  • Limited resources - Seperti jaringan wireless lainnya, jaringan Ad Hoc dibatasi oleh masalah daya dan kapasitas memori.
  • Multiple wireless link - Setiap node yang mempunyai sifat mobility dapat memiliki beberapa interface yang terhubung ke beberapa node lainnya.

Kelebihan Jaringan Ad Hoc
  • Bentuk komunikasi jaringan wireless yang sederhana sehingga konfigurasinya tidak rumit. Selain itu mode ini akan lebih cocok diterapkan ketika tidak infrastruktur wireless dan layanan seperti client server tidak diperlukan

Kurangan Jaringan Ad Hoc
  • keamanan jaringan utama yang menjadi terbuka. Jaringan wireless Ad-Hoc ini dapat dijadikan gateway bagi para penyusup untuk masuk ke dalam jaringan utamanya. Hal ini disebabkan karena jaringan ini sangat sulit untuk diatur secara terpusat selain itu sulit juga memonitor jaringan
  • Jaringan wireless Ad-Hoc dapat menimbulkan kekacauan bagi jaringan wireless yang sebenarnya, karena jaringan Ad-Hoc akan menggunakan bandwidth frekuensi yang terbatas yang juga digunakan oleh jaringan wireless sesungguhnya. Jadi, antara jaringan Ad-Hoc dengan jaringan wireless sesungguhnya harus saling berbagi bandwidth frekuensi.
Berikut ini kita akan membuat jaringan ad-hoc. Konfigurasi ad-hoc dengan menggunakan operating system windows 7 dapat dilakukan sebagai berikut :

Kamis, 10 Oktober 2019

Mengevaluasi Jaringan Nirkabel

Edit Posted by with 3 comments

Mengevaluasi Jaringan Nirkabel

  1.      Jaringan Nirkabel
Jaringan nirkabel adalah teknologi yang menggunakan dua piranti untuk bertukar data tanpa media kabel. Data dipertukarkan melalui media gelombang cahaya tertentu (seperti teknologi infrared pada remote tv) atau gelombang radio (seperti bluetooth pada ponsel dan komputer) dengan frekunsi tertentu. Jaringan nirkabel biasanya menghubungkan satu sistem komputer dengan sistem lainnya dengan menggunakan beberapa macam media transmisi tanpa kabel, seperti: gelombang radio, gelombang mikro, maupun cahaya infrared.

a.      Keunggulan Jaringan Nirkabel 

1)       Tingkat mobilitas Tinggi : penggunaan jaringan nirkabel memberikan kemudahan terhadap pengguna untuk mengakses informasi dimana pun mereka berada selama dapat terjangkau jaringan nirkabel tersebut. seorang pengguna yang berada di lokasi mana saja di kantor ataupun di ruang publik (hostpot) selalu dapat tersambung ke internet sehingga komunikasi serta proses mendapatkan data atau informasi bisa dilakukan dengan lebih cepat.
2)       Peoses instalasinya mudah dan cepat : Instalasi sebuah jaringan nirkabel termasuk mudah cepat tanpa harus menarik kabel melalui dinding. kabel hanya digunakan ketika menghubungkan sebuah access point ke sebuah jaringan (hub/repeater/router), sementara koneksi ke komputer klient dilakukan via gelombang radio dengan medium udara. berbeda ketika menggunakan jaringan berbasis kabel, tiap komputer yang akan tersambung ke jaringan LAN perlu menarik kabel satu persatu ke hub.
3)       Lebih fleksibel : Penggunaan jaringan nirkabel memungkinkan kita membangun sebuah jaringan komputer pada tempat tempat yang tidak mungkin atau sulit dijangkau oleh kabel. seperti di kota-kota besar, infrasturktur untuk tempat kabel sudah sangat sulit dan tidak mempunyai tempat yang cukup memadai sehingga penggunaan jaringan nirkabel menjadi salah satu alternatif solusi yang tepat.
4)       Meningkatkan produktivitas : Karena dapat selalu tersambung ke jaringan internet atau intranet, dimana pun pengguna berada selama dalam jangkauan jaringan, respon pengguna akan lebih cepat. sperti dalam sebuah perusahaan, ketika karyawan dapat mengakses informasi di lokasi mana pun, mereka dapat dengan cepatmerespons kebutuhan atau keluhan dari pelanggan sehingga proses pengambilan keputusan dapat segera dilakukan.

b.      Kekurangan Jaringan Nirkabel

1)      Keamanan :  Karena jaringan nirkabel bekerja dengan medium udara, sebenarnya transmisi data dapat ditangkap dan disadap oleh siapa saja sehingga banyak sekali jenis serangan yang terjadi pada jaringan nirkabel, namun, ada beberapa teknik dan tip optimalisasi jaringan.
2)      Faktor kecepatan :  Jaringan nirkabel dapat menyediakan transmisi data 11Mbps hingga 56Mbps. kecepatan data dipengaruhi oleh lingkungan sehingga laju data yang didapat menjadi 11 Mbps hingga 24Mbps. faktor cuaca sangat berpengaruh terhadap kualitas sinyal, mengingat bahwa sistem transmisi yang digunakan adalah medium gelombang radio diudara, sehingga bisa memberikan penundaan kepada pengguna.,
3)      Faktor biaya (Cost):  Harga komponen untuk membuat jaringan nirkabel saat ini masih tergolong mahal sehingga implementasinya membutuhkan perencanaan yang tepat. walaupun biaya awalnya sangat tinggi, biaya perawatannya masih lebih murah dibandingkan jaringan nirkabel. selain itu, jaringan nirkabel sangat cocok untuk lingkungan dinamis, maksudnya sering mengalami perpindahan atau rotasi lingkungan kerja.
4)      Terlepas dari keuntungan dan kerugian jaringan nirkabel, saat ini pemanfaatan teknologi telah banyak digunakan baik dalam perusahaan (private) maupun di lokasi publik (hotspot). semakin maraknya penggunaan jaringan nirkabel menunjukan bahwa keuntungan nirkabel lebih besar dibandingkan dengan kerugiannya.

2.      Gelombang Radio
Radio adalah teknologi yang digunakan untuk pengiriman sinyal dengan cara modulasi dan radiasi elektromagnetik ( gelombang elektromagnetik ). Gelombang ini melintas dan merambat lewat udara dan bisa juga merambat lewat ruang angkasa yang hampa udara, karena gelombang ini tidak memerlukan medium pengangkut (seperti molekul udara ).

Gelombang radio  adalah suatu bentuk dari radiasi elektromagnetik, dan terbentuk ketika objek bermuatan listrik dimodulasi (dinaikkan frekuansinya) pada frekuensi yang terdapat dalam frekuensi gelombang radio (RF) dalam suatu spektrum elektromagnetik dan radiasi elektromagnetiknya bergerak dengan cara osilasi elektrik maupun magnetik. 

gelombang radio di kelompokan menurut panjang gelombang atau frekuensinya. jika panjang gelombang tinggi, maka pasti frekuensinya rendeh atau sebaliknya . frekuensi gelombang radio mulai 30 KHz keatas dan di kelompokan berdasarkan lebar frekuensinya. 
 
 a.     Frekuensi dan panjang Gelombang
Frekuensi adalah jumlah getaran yang terjadi dalam waktu satu detik atau banyaknya      getaran listrik yang dihasilkan tiap detik. untuk mencapai satu jarak tertentu, semakin panjang gelombang, semakin rendah frekuensinya. sebaliknya semakin pendek gelombangnya, semakin tinggi frekuensinya yang diperlukan. 
untuk menghitung frekuensi, seseorang menetapkan jarak waktu, menghitung jumlah kejadian peristiwa, dan membagi hitungan ini dengan panjang jarak waktu. frekuensi sebesar 1 Hz menyatakan peristiwa yang terjadi satu kali per detik.


       
   Panjang Gelombang adalah sebuah jarak antara satuan berulang dari sebuah pola gelombang.
                                        
   a.      Modulasi Analog
1)      Modulasi AM
Amplitudo Modulation (AM) adalah salah satu bentuk modulasi dimana sinyal informasi digabungkan dengan sinyal pembawa berdasarkan perubahan amplitudonya.
                       

2)      Modulation (FM)
Frequency Modulation (FM) adalah teknik pengiriman informasi yang berbentuk frekuensi rendah dengan cara memodulasi frekuensi gelombang pembawa yang berfrekuensi tinggi.
                     

3)      Phase Modulation (PM)
Phase Modulation (PM) adalah bentuk modulasi yang mempresentasikan informasi sebagai variasi fase dari sinyal pembawa. 
                    

       b.      Modulasi Digital 
Modulasi digital merupakan proses penumpangan sinyal digital (bit stream) ke dalam sinyal pembawa. Modulasi digital sebenarnya adalah proses mengubah-ngubah karakteristik dan sifat gelombangsinyal pembawa sehingga bentuk aslinya (sinyal pembawa modulasi) memiliki ciri-ciri dari bit-bit (0 atau 1).
1)      Frequency Shift Keying (FSK)
Frequency Shift Keying (FSK) adalah bentuk modulasi digital yang gelombang pembawanya dimodulasi berdasarkan pergeseran frekuensi. 
                       

2)      Phase Shift Keying (PSK)
Phase Shift Keying (PSK) adalah bentuk pemodulasi yang proses pemodulasian menggunakan cara penggeseran tahap.