Minggu, 06 Juni 2010

AGLAT ( MOBILE AGENT )

Mobile Agent

Mobile agent ialah agen yang mempunyai kemampuan berpindah-pindah dalam jaringan (contohnya pada jaringan World Wide Web), berinteraksi dengan host-host asing, mengumpulkan informasi berdasarkan pengguna, dan mengembalikannya ke pengirim setelah melakukan tugasnya. Mobile agent ini diimplementasikan oleh remote program. Hal-hal yang berkenaan dengan pemrograman remote juga dapat diterapkan pada mobile agent seperti :
• Penamaan Program – memberikan nama kepada agen untuk membedakannya dengan agen yang lain.
• Autentifikasi program – autentifikasi implementor dari program agen.
• Migrasi Program – memindahkan program dari satu mesin ke mesin lainnya.
• Keamanan Program – memastikan program tidak merusak mesin pengeksekusinya.
Salah satu contoh mobile agent ialah agen monitoring data stok dan penjualan yaitu agen yang secara mandiri bertugas untuk memonitor perubahan data, melaporkan kepada pengirimnya jika terjadi perubahan data pada basis data yang dimonitor. Agen monitoring sangat berguna bagi sistem yang mengalami perubahan secara dinamis, dimana perubahan data tersebut mempunyai pengaruh yang besar pada sistem secara keseluruhan. Dalam implementasinya agen jenis ini dapat menggunakan protokol HTTP (Hypertext Transfer Protocol) maupun ATP (Aglets Transfer Protocol) untuk mengakses informasi di dalam basis data yang terhubung dalam jaringan web. Sedangkan untuk mengakses ke basis data dapat digunakan KQML atau bahasa komunikasi agen lainnya untuk komunikasi antar agen.

III.1. Keuntungan Mobile Agent
Dibandingkan dengan teknologi agen statis, mobile agent mempunyai beberapa keuntungan yaitu :
- Mengurangi Beban Jaringan

Pada sistem yang terdistribusi komunikasi antar bagian sistem sangat tergantung pada protokol komunikasi yang melibatkan banyak interaksi untuk menyelesaikan tugas yang diberikan. Hal ini menyebabkan, trafic jaringan tinggi. Dengan mobile agent dapat dimungkinkan untuk mengemas suatu aplikasi, mengirimkannya ke host tujuan dan kemudian interaksi dapat terjadi secara lokal.

Gambar 2.14. Mobile Agent mengurangi trafik jaringan

- Efisiensi sumber daya.
Konsumsi sumber daya (CPU dan memori) dapat dihemat, sebab mobile agent bekerja sesuai dengan tugas yang diberikan yaitu pada satu node pada satu waktu. Node yang lain tidak menjalankan agen sampai node tersebut memerlukannya.

- Menanggulangi latency jaringan.
Sistem real-time yang kritis perlu tanggap terhadap perubahan lingkungannya secara real-time. Keterlambatan tanggapan yang diakibatkan oleh masalah jaringan harus dihindari. Mobile agent menawarkan suatu pemecahan dengan mengirimkan agen ke tujuan dan dieksekusi secara lokal.

- Eksekusi secara Asynchronous dan Autonomous.
Untuk menjaga koneksi dengan sistem lainnya diperlukan sarana komunikasi yang baik. Sayangnya dalam kenyataan seringkali banyak ditemukan jaringan yang mahal dan mudah putus, sehingga untuk mempertahankan koneksivitas menjadi tidak feasible, baik secara ekonomis maupun teknis. Dengan mobile agent hal ini dapat diminimasi karena mobile agent mampu bekerja secara mandiri dan dapat beroperasi secara asynchronous dan autonomous.. Gambar 2.5 menunjukan urutan peristiwa tersebut.

Gambar 2.15. eksekusi agen secara asyncronous & autonomous


- Adaptasi secara dinamis.
Mobile agent dapat mendeteksi adanya perubahan di lingkungannya dan dapat bereaksi secara autonomous melakukan perubahan.

- Andal dan Toleran terhadap Kesalahan.
Kemampuan mobile agent untuk beraksi secara dinamis pada situasi dan keadaan yang tak menguntungkan menjadikan mobile agent mudah untuk membuat sistem terdistribusi yang andal dan toleran terhadap kesalahan.
- Multiplatform.
Dalam komputasi berbasis web sangat dimungkinkan penggunaan berbagai sistem yang berbeda baik pada sisi hardware maupun software. Mobile agent tidak tergantung pada komputer dan jaringan, tetapi hanya tergantung pada lingkungannya. Sebagai contoh, mobile agent Java dapat ditujukan ke segala sistem yang mempunyai JVM (Java Virtual Machine) dan dapat beroperasi pada berbagai sistem operasi.


III.2 Sistem Multi Agen
Lange (1998) menjelaskan sistem multi agent dapat didefinisikan sebagai kumpulan jaringan agen yang mempunyai tugas khusus yang saling berinteraksi dan bekerja sama untuk memecahkan masalah global melalui bagian-bagian otonomi sistem. Karakteristik dari sistem multi agent menurut Lange (1998) adalah sebagai berikut :
- Setiap agen mempunyai tugas khusus untuk memecahkan masalah di bagian masing-masing, dan daya pandang yang terbatas.
- Tidak ada sistem kontrol global.
- Data terdistribusi pada masing-masing bagian.
Sistem ini secara tradisional mempunyai keunggulan pada bidang pemecahan masalah secara konkuren dan terdistribusi, dan juga memiliki keunggulan dalam pola-pola interaksi yang canggih. Tipe-tipe interaksi pada sistem multi agen ialah sebagi berikut (Parunak, 1998) :
- Cooperation (bekerja sama menuju satu tujuan yang sama).
- Coordination (mengorganisasikan aktivitas pemecahan masalah sehingga dapat bersama-sama mencapai tujuan).
- Negotiation (mencapai suatu kesepakatan yang dapat diterima berbagai pihak yang terlibat).
Sistem multi agent memperluas cakupan agen cerdas setidak-tidaknya dalam dua bagian yaitu :
- Agen user mendelegasikan tugasnya kepada agen lain dalam mencapai tujuannya
- Agen didesain secara eksplisit untuk berkomunikasi dan berinteraksi dengan agen lainnya.
Salah satu aplikasi yang menarik dari sistem multi agen ini ialah dalam sistem monitoring data stok dan penjualan karena data stok dan penjualan di tiap distributor mempunyai sifat yang dinamis dimana perubahan datanya sangat cepat. Sistem agen ini dapat membantu perusahaan manufaktur untuk memonitor secara simultan dan real time kondisi stok dan penjualan di masing-masing distributor yang memasarkan produknya.


III. Perancangan Sistem Mobile Agent
Sistem mobile agent yang akan dibangun adalah agent untuk melakukan monitoring dan updating data stok di sebuah distributor dalam jaringan berbasis web. Secara lengkap sistem yang akan dibangun pada penelitian ini dapat dijelaskan seperti pada gambar 1. Masing-masing komputer mempunyai tugas fungsi sebagai berikut :
• Web server
• Server basis data
• Klien



Gambar 1. Rancangan sistem

Secara blok diagram, perancangan sistem terdiri dari 3 blok utama, yaitu sisi klien atau client side, sisi server atau server side dan remote side. Sisi klien berupa internet browser yang dapat mengakses suatu web server. Sisi server terdiri dari web server dan aglet server. Sedang remote side berupa server basis data. Detail mengenai sub blok ini akan dijelaskan pada sub berikutnya. Secara lengkap blok diagram sistem dapat dilihat pada gambar 2.



Gambar 2. Diagram blok arsitektur sistem


Arsitektur sistem yang dikembangkan pada penelitian ini dapat dijelaskan sebagai berikut.
•Aglet server, merupakan rumah agen atau tempat hidup agen dimana agen dibuat, bekerja dan bertukar informasi dengan agen lainnya.
• Apache merupakan HTTP server yang mampu menangani permintaan browser untuk menampilkan halaman web baik dalam format html maupun php.
• MySQL merupakan basis data server yang berada di web server tempat penyimpanan data yang bisa diakses user menggunakan web browser.
Web browser merupakan interface bagi user sekaligus access point ke dalam sistem.

Minggu, 30 Mei 2010

Bind9

Instalasi dan konfigurasi Bind9

Instalasi dan konfigurasi Bind9 agar dapat menjadi DNS server lokal pada jaringan (LAN) anda.Parameter yang digunakan kali ini :Nama Host : R-corp.com
IP Host : 10.0.0.253langsung saja saya mulai langkah-langkah untuk melakukan instalasi dan konfigurasi Bind9 sebagai DNS server lokal :Install bind dengan perintah :

$ sudo aptitude install bind9$ sudo nano /etc/bind/named.conf

langkah selanjutnya adalah meng-edit file named.conf menggunakan editor nano (anda boleh menggunakan editor apa saja yg anda suka) dengan perintah :lalu tambahkan zonenya (sesuaikan dengan kondisi server anda).

zone "R-corp.com" IN {
type master;
file "/etc/bind/R-corp.com.db";
allow-update { none; };
}; zone "0.0.10.in-addr.arpa" IN {
type master;
file "/etc/bind/R-corp.com-ptr.db";
allow-update { none; };
};

Kalau anda telah selesai mengedit file named.conf sesuai dengan kondisi jaringan anda, anda dapat simpan konfigurasi diatas. Setelah itu buatlah 2 file yang ada pada file named.conf yang tadi anda buat (dalam contoh ini adalah R-corp.com.db dan R-corp.com-ptr.db). Pertama-tama buat dahulu file R-corp.com.db :

$ sudo nano /etc/bind/R-corp.com.db

dan isikan dengan :

$TTL 604800
@ IN SOA R-corp. admin.R-corp.com. (
1 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS ns.R-corp.com.
@ IN A 10.0.0.253
localhost IN A 127.0.0.1
www IN A 10.0.0.253
ns IN A 10.0.0.253

lalu buat file konfigurasi kedua, yaitu R-corp.com-ptr.db :

$ sudo nano /etc/bind/R-corp.com-ptr.db

dan isikan dengan parameter :

$TTL 604800
@ IN SOA websaya.com. root.R-corp.com. (
1 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
; IN NS ns.R-corp.com
2 IN PTR R-corp.com.

kalau sudah selesai, simpan konfigurasi yang tadi telah anda masukan. Setelah itu, anda harus mengedit lagi beberapa file agar semua berhasil dengan baik. File selanjutnya yang akan di edit adalah file /etc/hosts :

$ sudo nano /etc/hosts

lalu edit sesuai dengan parameter server anda :

127.0.0.1 localhost
10.0.0.253 R-corp.com server

simpan kembali perubahan yang anda telah buat. file selanjutnya yang akan diedit adalah file resolv.conf :

$ sudo nano /etc/resolv.conf

isikan parameter seperti dibawah ini (anda sesuaikan dengan pamameter server anda) :

domain R-corp.com
search R-corp.com
nameserver 10.0.0.253

simpan kembali perubahan yang anda telah buat. file selanjutnya yang akan diedit adalah file named.conf.options :

options {
directory "/var/cache/bind"; forwarders {
203.153.118.10; <—- IP DNS Server ISP anda }; auth-nxdomain yes; # conform to RFC1035 listen-on-v6 { any; }; }; Ubah DNS server sesuai dengan parameter DNS dari ISP anda dan kalau sudah selesai, anda simpan file tersebut. Proses konfigurasi telah selesai. Restart Bind $ sudo /etc/init.d/bind9 restart Tes konfigurasi dengan menggunakan perintah nslookup, host maupun dig nslookup www.R-corp.com Hasilnya :Server: 10.0.0.253 Address: 10.0.0.253#53 Name: www.R-corp.com Address: 10.0.0.253host R-corp.com hasilnya R-corp.com has address 10.0.0.253dig R-corp.com ; <<>> DiG 9.6.1-P2 <<>> R-corp.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 33774
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1 ;; QUESTION SECTION:
;R-corp.com. IN A ;; ANSWER SECTION:
R-corp.com. 604800 IN A 10.0.0.253 ;; AUTHORITY SECTION:
R-corp.com. 604800 IN NS ns.R-corp.com. ;; ADDITIONAL SECTION:
ns.R-corp.com. 604800 IN A 10.0.0.253 ;; Query time: 0 msec
;; SERVER: 10.0.0.253#53(10.0.0.253)
;; WHEN: Wed Dec 30 14:19:54 2009
;; MSG SIZE rcvd: 88

Minggu, 16 Mei 2010

TCP dan UDP

Apa itu TCP ?
TCP (Transmission Control Protocol) adalah protokol yang paling umum digunakan di Internet . Alasan nya karena TCP menawarkan koreksi kesalahan . Ketika protokol TCP digunakan ada klausul “pengiriman terjamin . ” Hal ini disebabkan adanya bagian untuk sebuah metode yang disebut “flow control . ” Flow control menentukan kapan data harus dikirim kembali , dan kapan menghentikan aliran data paket sebelumnya , sampai berhasil ditransfer . Hal ini karena jika paket data berhasil dikirim , tabrakan dapat terjadi . Ketika ini terjadi , maka klien meminta kembali paket dari server sampai seluruh paket lengkap di transfer dan identik dengan aslinya .
TCP memiliki karakteristik sebagai berikut:

  • Berorientasi sambungan (connection-oriented): Sebelum data dapat ditransmisikan antara dua host, dua proses yang berjalan pada lapisan aplikasi harus melakukan negosiasi untuk membuat sesi koneksi terlebih dahulu. Koneksi TCP ditutup dengan menggunakan proses terminasi koneksi TCP (TCP connection termination).
  • Full-duplex: Untuk setiap host TCP, koneksi yang terjadi antara dua host terdiri atas dua buah jalur, yakni jalur keluar dan jalur masuk. Dengan menggunakan teknologi lapisan yang lebih rendah yang mendukung full-duplex, maka data pun dapat secara simultan diterima dan dikirim. Header TCP berisi nomor urut (TCP sequence number) dari data yang ditransmisikan dan sebuah acknowledgment dari data yang masuk.
  • Dapat diandalkan (reliable): Data yang dikirimkan ke sebuah koneksi TCP akan diurutkan dengan sebuah nomor urut paket dan akan mengharapkan paket positive acknowledgment dari penerima. Jika tidak ada paket Acknowledgment dari penerima, maka segmen TCP (protocol data unit dalam protokol TCP) akan ditransmisikan ulang. Pada pihak penerima, segmen-segmen duplikat akan diabaikan dan segmen-segmen yang datang tidak sesuai dengan urutannya akan diletakkan di belakang untuk mengurutkan segmen-segmen TCP. Untuk menjamin integritas setiap segmen TCP, TCP mengimplementasikan penghitungan TCP Checksum.
  • Byte stream: TCP melihat data yang dikirimkan dan diterima melalui dua jalur masuk dan jalur keluar TCP sebagai sebuah byte stream yang berdekatan (kontigu). Nomor urut TCP dan nomor acknowlegment dalam setiap header TCP didefinisikan juga dalam bentuk byte. Meski demikian, TCP tidak mengetahui batasan pesan-pesan di dalam byte stream TCP tersebut. Untuk melakukannya, hal ini diserahkan kepada protokol lapisan aplikasi (dalam DARPA Reference Model), yang harus menerjemahkan byte stream TCP ke dalam “bahasa” yang ia pahami.
  • Memiliki layanan flow control: Untuk mencegah data terlalu banyak dikirimkan pada satu waktu, yang akhirnya membuat “macet” jaringan internetwork IP, TCP mengimplementasikan layanan flow control yang dimiliki oleh pihak pengirim yang secara terus menerus memantau dan membatasi jumlah data yang dikirimkan pada satu waktu. Untuk mencegah pihak penerima untuk memperoleh data yang tidak dapat disangganya (buffer), TCP juga mengimplementasikan flow control dalam pihak penerima, yang mengindikasikan jumlah buffer yang masih tersedia dalam pihak penerima.
  • Melakukan segmentasi terhadap data yang datang dari lapisan aplikasi (dalam DARPA Reference Model)
  • Mengirimkan paket secara “one-to-one”: hal ini karena memang TCP harus membuat sebuah sirkuit logis antara dua buah protokol lapisan aplikasi agar saling dapat berkomunikasi. TCP tidak menyediakan layanan pengiriman data secara one-to-many.


TCP umumnya digunakan ketika protokol lapisan aplikasi membutuhkan layanan transfer data yang bersifat andal, yang layanan tersebut tidak dimiliki oleh protokol lapisan aplikasi tersebut. Contoh dari protokol yang menggunakan TCP adalah HTTP dan FTP. Transmission Control Protocol (TCP) adalah suatu protokol yang berada di lapisan transpor (baik itu dalam tujuh lapis model referensi OSI atau model DARPA) yang berorientasi sambungan (connection-oriented) dan dapat diandalkan (reliable).
Segmen-segmen TCP akan dikirimkan sebagai datagram-datagram IP (datagram merupakan satuan protocol data unit pada lapisan internetwork). Sebuah segmen TCP terdiri atas sebuah header dan segmen data (payload), yang dienkapsulasi dengan menggunakan header IP dari protokol IP. Sebuah segmen dapat berukuran hingga 65495 byte: 216-(ukuran header IP terkecil (20 byte)+ukuran header TCP terkecil (20 byte)). Datagram IP tersebut akan dienkapsulasi lagi dengan menggunakan header protokol network interface (lapisan pertama dalam DARPA Reference Model) menjadi frame lapisan Network Interface. Gambar berikut mengilustrasikan data yang dikirimkan ke sebuah host.
Di dalam header IP dari sebuah segmen TCP, field Source IP Address diatur menjadi alamat unicast dari sebuah antarmuka host yang mengirimkan segmen TCP yang bersangkutan. Sementara itu, field Destination IP Address juga akan diatur menjadi alamat unicast dari sebuah antarmuka host tertentu yang dituju. Hal ini dikarenakan, protokol TCP hanya mendukung transmisi one-to-one. Port TCP mampu mengindikasikan sebuah lokasi tertentu untuk menyampaikan segmen-segmen TCP yang dikirimkan yang diidentifikasi dengan TCP Port Number. Port TCP merupakan hal yang berbeda dibandingkan dengan port UDP, meskipun mereka memiliki nomor port yang sama. Port TCP merepresentasikan satu sisi dari sebuah koneksi TCP untuk protokol lapisan aplikasi, sementara port UDP merepresentasikan sebuah antrean pesan UDP untuk protokol lapisan aplikasi. Selain itu, protokol lapisan aplikasi yang menggunakan port TCP dan port UDP dalam nomor yang sama juga tidak harus sama. Sebagai contoh protokol Extended Filename Server (EFS) menggunakan port TCP dengan nomor 520, dan protokol Routing Information Protocol (RIP) menggunakan port UDP juga dengan nomor 520. Jelas, dua protokol tersebut sangatlah berbeda! Karenanya, untuk menyebutkan sebuah nomor port, sebutkan juga jenis port yang digunakannya, karena hal tersebut mampu membingungkan (ambigu).
Proses pembuatan koneksi TCP disebut juga dengan “Three-way Handshake”. Tujuan metode ini adalah agar dapat melakukan sinkronisasi terhadap nomor urut dan nomor acknowledgement yang dikirimkan oleh kedua pihak dan saling bertukar ukuran TCP Window. Prosesnya dapat digambarkan sebagai berikut:

  • Host pertama (yang ingin membuat koneksi) akan mengirimkan sebuah segmen TCP dengan flag SYN diaktifkan kepada host kedua (yang hendak diajak untuk berkomunikasi).
  • Host kedua akan meresponsnya dengan mengirimkan segmen dengan acknowledgment dan juga SYN kepada host pertama.
  • Host pertama selanjutnya akan mulai saling bertukar data dengan host kedua.
    TCP menggunakan proses jabat tangan yang sama untuk mengakhiri koneksi yang dibuat. Hal ini menjamin dua host yang sedang terkoneksi tersebut telah menyelesaikan proses transmisi data dan semua data yang ditransmisikan telah diterima dengan baik. Itulah sebabnya, mengapa TCP disebut dengan koneksi yang reliable

Apa itu UDP ?
UDP
(User Datagram Protocol) adalah protokol umum lainnya yang digunakan di Internet . Namun UDP tidak pernah digunakan untuk mengirim data penting seperti halaman web , informasi database, dll; UDP biasanya digunakan untuk streaming audio dan video . Streaming media seperti Windows Media audio file ( . WMA) , Real Player ( . RM) , dan lain-lain menggunakan UDP karena menawarkan kecepatan! Alasannya UDP lebih cepat daripada TCP adalah karena tidak ada bentuk kontrol aliran atau koreksi kesalahan . Data yang dikirim melalui Internet dipengaruhi oleh tabrakan , dan kesalahan yang muncul . Ingatlah bahwa UDP hanya berkaitan dengan kecepatan . Ini adalah alasan utama mengapa media streaming tidak berkualitas tinggi .
Berita buruknya UDP telah digunakan di beberapa virus trojan horse. Hacker mengembangkan skrip dan trojan untuk menjalankan UDP dalam rangka untuk menutupi kegiatan mereka . Paket-paket UDP juga digunakan dalam serangan DoS (Denial of Service). Penting untuk mengetahui perbedaan antara TCP port 80 dan UDP port 80 . Lebih jelas tentang port silahkan lihat pembahasannya dibawah .

Berikut karakteristeik - karakteristik UDP :

  • Connectionless (tanpa koneksi): Pesan-pesan UDP akan dikirimkan tanpa harus dilakukan proses negosiasi koneksi antara dua host yang hendak berukar informasi.
  • Unreliable (tidak andal): Pesan-pesan UDP akan dikirimkan sebagai datagram tanpa adanya nomor urut atau pesan acknowledgment. Protokol lapisan aplikasi yang berjalan di atas UDP harus melakukan pemulihan terhadap pesan-pesan yang hilang selama transmisi. Umumnya, protokol lapisan aplikasi yang berjalan di atas UDP mengimplementasikan layanan keandalan mereka masing-masing, atau mengirim pesan secara periodik atau dengan menggunakan waktu yang telah didefinisikan.
  • UDP menyediakan mekanisme untuk mengirim pesan-pesan ke sebuah protokol lapisan aplikasi atau proses tertentu di dalam sebuah host dalam jaringan yang menggunakan TCP/IP. Header UDP berisi field Source Process Identification dan Destination Process Identification.
  • UDP menyediakan penghitungan checksum berukuran 16-bit terhadap keseluruhan pesan UDP.


Fungsi UDP sebagai berikut :

  • Protokol yang “ringan” (lightweight): Untuk menghemat sumber daya memori dan prosesor, beberapa protokol lapisan aplikasi membutuhkan penggunaan protokol yang ringan yang dapat melakukan fungsi-fungsi spesifik dengan saling bertukar pesan. Contoh dari protokol yang ringan adalah fungsi query nama dalam protokol lapisan aplikasi Domain Name System.
  • Protokol lapisan aplikasi yang mengimplementasikan layanan keandalan: Jika protokol lapisan aplikasi menyediakan layanan transfer data yang andal, maka kebutuhan terhadap keandalan yang ditawarkan oleh TCP pun menjadi tidak ada. Contoh dari protokol seperti ini adalah Trivial File Transfer Protocol (TFTP) dan Network File System (NFS)
  • Protokol yang tidak membutuhkan keandalan. Contoh protokol ini adalah protokol Routing Information Protocol (RIP).
  • Transmisi broadcast: Karena UDP merupakan protokol yang tidak perlu membuat koneksi terlebih dahulu dengan sebuah host tertentu, maka transmisi broadcast pun dimungkinkan. Sebuah protokol lapisan aplikasi dapat mengirimkan paket data ke beberapa tujuan dengan menggunakan alamat multicast atau broadcast. Hal ini kontras dengan protokol TCP yang hanya dapat mengirimkan transmisi one-to-one. Contoh: query nama dalam protokol NetBIOS Name Service.
    UDP tidak menyediakan layanan-layanan antar-host berikut:
  • UDP tidak menyediakan mekanisme penyanggaan (buffering) dari data yang masuk ataupun data yang keluar. Tugas buffering merupakan tugas yang harus diimplementasikan oleh protokol lapisan aplikasi yang berjalan di atas UDP.
  • UDP tidak menyediakan mekanisme segmentasi data yang besar ke dalam segmen-segmen data, seperti yang terjadi dalam protokol TCP. Karena itulah, protokol lapisan aplikasi yang berjalan di atas UDP harus mengirimkan data yang berukuran kecil (tidak lebih besar dari nilai Maximum Transfer Unit/MTU) yang dimiliki oleh sebuah antarmuka di mana data tersebut dikirim. Karena, jika ukuran paket data yang dikirim lebih besar dibandingkan nilai MTU, paket data yang dikirimkan bisa saja terpecah menjadi beberapa fragmen yang akhirnya tidak jadi terkirim dengan benar.
  • UDP tidak menyediakan mekanisme flow-control, seperti yang dimiliki oleh TCP.
  • UDP berbeda dengan TCP yang memiliki satuan paket data yang disebut dengan segmen, melakukan pengepakan terhadap data ke dalam pesan-pesan UDP (UDP Messages). Sebuah pesan UDP berisi header UDP dan akan dikirimkan ke protokol lapisan selanjutnya (lapisan internetwork) setelah mengepaknya menjadi datagram IP. Enkapsulasi terhadap pesan-pesan UDP oleh protokol IP dilakukan dengan menambahkan header IP dengan protokol IP nomor 17 (0×11). Pesan UDP dapat memiliki besar maksimum 65507 byte: 65535 (216)-20 (ukuran terkecil dari header IP)-8 (ukuran dari header UDP) byte. Datagram IP yang dihasilkan dari proses enkapsulasi tersebut, akan dienkapsulasi kembali dengan menggunakan header dan trailer protokol lapisan Network Interface yang digunakan oleh host tersebut.
  • Dalam header IP dari sebuah pesan UDP, field Source IP Address akan diset ke antarmuka host yang mengirimkan pesan UDP yang bersangkutan; sementara field Destination IP Address akan diset ke alamat IP unicast dari sebuah host tertentu, alamat IP broadcast, atau alamat IP multicast

Struktur frame TCP dan UDP
Sebagai data yang bergerak di sepanjang jaringan , berbagai atribut ditambahkan ke file untuk membuat bingkai . Proses ini disebut enkapsulasi . Ada beberapa metode yang berbeda dari enkapsulasi tergantung pada protokol dan topologi yang sedang digunakan . Akibatnya , paket struktur rangka ini berbeda juga . Gambar berikut ini menunjukkan struktur bingkai TCP dan UDP. ( lihat gambarnya disini dan disini )

Payload area berisi data sebenarnya . Perhatikan bahwa TCP memiliki struktur bingkai yang lebih kompleks . Hal ini terutama disebabkan oleh fakta bahwa TCP merupakan protokol berorientasi koneksi . Bidang tambahan yang perlu untuk memastikan “jaminan pengiriman” yang ditawarkan oleh TCP

IP Ports
Port dikembangkan agar komputer dapat menerima data dari berbagai sumber melalui alamat IP yang sama . Pikirkan seperti ini; Anda adalah layanan TV Internet , dan port adalah saluran Anda . Anda memiliki banyak bentuk hiburan , berita , dan informasi yang tersedia melalui berbagai saluran yang berbeda . Pikirkan tentang hal ini , katakanlah MTV adalah saluran 35 di TV . Hal yang sama berlaku untuk web server yang berjalan pada port 80 . Setiap port memiliki tujuan khusus melayani masing-masing saluran program televisi yang berbeda . Meskipun Anda hanya punya 1 kabel TV berlangganan , Anda masih dapat menerima beberapa saluran .
Dua jenis utama port: TCP dan UDP . TCP singkatan dari Transmission Control Protocol . UDP adalah singkatan dari User Data Protocol . Beberapa program di komputer Anda akan menggunakan port TCP untuk komunikasi dan lainnya dapat menggunakan UDP . Penting untuk mengetahui perbedaan bagaimana cara keduanya beroperasi .
Ada 65.535 TCP dan UDP port yang tersedia untuk mengirimkan data . Port 0-1.023 dicadangkan untuk penggunaan umum . Port ini ditugaskan oleh IANA (Internet Assigned Numbering Authority) . Ini berarti , bahwa setiap port 0-1.023 akan sama pada setiap sistem . Sebagai contoh , katakanlah server di New York menggunakan port 80 , dan lainnya adalah server Texas . Karena port 80 jatuh di kisaran reserved Port , kita tahu kedua server menggunakan port 80 untuk koneksi HTTP . Melihat daftar port yang diketahui dapat membantu Anda menentukan jenis koneksi yang terdapat pada mesin Anda . Untuk melihat daftar nomor port yang umum digunakan dan penjelasannya klik di sini .
Server atau mesin dalam hal “mengakses” port tertentu . Sebagai contoh , menjalankan server web , FTP , dan layanan Telnet akan mengakses pada port masing-masing . Tindakan mengakses ini berarti mesin sedang menunggu perangkat lain tersambung. Lihat ilustrasi di sini:
Anda dapat melihat bagaimana server mengakses 3 port lebih dari satu alamat IP (192.168.0.15). Anda juga harus tahu bahwa adalah mungkin untuk beberapa perangkat untuk terhubung ke satu port. Artinya , telnet server mungkin menerima lebih dari 100 koneksi simultan ke port 23.

sumber :

Sabtu, 08 Mei 2010

ROUTING

Routing

Routing adalah process transfer data melewati internetwork dari satu jaringan LAN ke jaringan LAN lainnya. Suatu router menerima dan mem-forward traffic sepanjang jalur yang sesuai / tepat menurut address software. Router bekerja pada layer Network / Layer 3 dan lazim disebut sebagai piranti layer 3. Didalam IP network, routing dilakukan menurut table IP routing. Semua IP hosts menggunakan routing table untuk melewatkan / forward traffic yang diterima dari router lain atau hosts.



IP routing protocol memberikan komunikasi antar router. IP routing protocol mempunyai satu tujuan utama – mengisi routing table dengan jalur (route) terbaik dan terkini yang bisa dia dapatkan. Berikut ini adalah IP routing protocol yang didukung oleh router Cisco.
• RIP (Routing Information Protocol)
• IGRP (Interior Gateway Routing Protocol)
• IS-IS (Intermediate System-to-Intermediate System)
• OSPF (Open Shortest Path First OSPF)


1. Static Routing
Static routing adalah komunikasi data menggambarkan konsep salah satu cara untuk mengkonfigurasi jalur seleksi di router di jaringan komputer . Ini adalah jenis routing ditandai dengan tidak adanya komunikasi antara router tentang arus topologi dari jaringan . Hal ini dicapai dengan secara manual menambahkan rute ke tabel routing. Kebalikan dari statis routing adalah routing dinamis , kadang-kadang juga disebut sebagai adaptif routing.


2. Distance Vector Routing
Dalam komunikasi komputer teori yang berhubungan dengan jaringan paket-switched , Distance Vector Protokol adalah salah satu dari dua kelas utama dari routing protokol , kelas utama lainnya adalah protokol link-state . Sebuah distance-vector routing protocol menggunakan algoritma Bellman-Ford menghitung path.
Sebuah distance vector routing protokol mengharuskan router tetangganya menginformasikan perubahan topologi secara berkala dan, dalam beberapa kasus, ketika perubahan terdeteksi dalam topologi jaringan. Dibandingkan dengan protokol link state , yang membutuhkan sebuah router untuk menginformasikan semua node dalam jaringan perubahan topologi, jarak-vector routing protokol memiliki kurang komputasi kompleksitas dan overhead pesan .
Distance Vector berarti Router diiklankan sebagai vektor jarak dan Arah. Arah hanya hop alamat berikutnya dan antarmuka keluar dan Jarak berarti seperti hop.
Router menggunakan protokol distance vector tidak memiliki pengetahuan tentang seluruh jalan ke tujuan. Sebaliknya DV menggunakan dua metode:
1. Arah dimana atau antarmuka yang paket harus diteruskan.
2. Jarak dari tempat tujuan.
Contoh routing distance vector protokol termasuk RIPv1 dan 2 dan IGRP . EGP dan BGP tidak murni distance vector routing protokol karena protokol-vektor menghitung jarak rute hanya didasarkan pada biaya link sedangkan di BGP, misalnya, nilai preferensi rute lokal mengambil prioritas di atas biaya link.


3. Link State Routing
Sebuah link-state routing protokol adalah salah satu dari dua kelas utama dari routing protokol yang digunakan dalam packet switching jaringan untuk komunikasi komputer , kelas utama lainnya adalah vektor-jarak protokol routing . Contoh link-state routing protokol termasuk OSPF dan IS-IS .
Link-state protokol dilakukan oleh setiap dalam jaringan
(node yaitu yang siap untuk paket ke depan di internet , ini disebut router ). Konsep dasar dari link-state routing adalah setiap node membangun konektivitas ke jaringan, dalam bentuk grafik , yang menunjukkan node yang terhubung ke node lain. Kemudian, setiap node secara independen menghitungrterbaik logis berikutnya dari itu ke setiap tujuan mungkin dalam jaringan. Koleksi jalur terbaik kemudian akan membentuk node tabel routing .
Hal ini bertentangan dengan jarak-vector routing protokol , dimana bekerja dengan cara masing-masing memiliki saham nodetabel routing-nya dengan tetangga-tetangganya. Dalam protokol link-state informasi hanya lewat di antara node konektivitas terkait.


4. HYBRID ROUTING

Hybrid Protokol hybrid menggunakan aspek-aspek dari routing protokol jenis distance-vector dan routing protocol jenis link-state--sebagai contoh adalah EIGRP.
Enhance Interior Gateway Routing Protocol (EIGRP) adalah sebuah routing protocol distance-vector milik cisco (cisco-proprietary) yang sudah ditingkatkan, yang memberi suatu keunggulan dibanding IGRP. Keduanya menggunakan konsep dari sebuah autonomous system untuk menggambarkan kumpulan dari router-router yang contiguous (berentetan, sebelah menyebelah) yang menjalankan routing protocol yang sama dan berbagi informasi routing. Tapi EIGRP memasukkan subnet mask kedalam update route-nya. Sehingga memungkinkan kita menggunakan VLSM dan melakukan perangkuman (summarization) . EIGRP mempunyai sebuah jumlah hop maksimum 255. Berikut fitur EIGRP yang jauh lebih baik dari IGRP
• Mendukung IP, IPX, dan AppleTalk melalui modul-modul yang bersifat protocol dependent
• Pencarian network tetangga yang dilakukan dengan efisien
• Komunikasi melalui Reliable Transport Protocol (RTP)
• Pemilihan jalur terbaik melalui Diffusing update Algoritma (DUAL)


5. Routing Information Protocol ( RIP )
Routing Information Protocol (RIP) adalah sebuah protokol routing dinamis yang digunakan dalam jaringan berbasis lokal dan luas. Karena itu protokol ini diklasifikasikan sebagai Interior Gateway Protocol (IGP). Protokol ini menggunakan algoritma Distance-Vector Routing. Pertama kali didefinisikan dalam RFC 1058 (1988). Protokol ini telah dikembangkan beberapa kali, sehingga terciptalah RIP Versi 2 (RFC 2453). Kedua versi ini masih digunakan sampai sekarang, meskipun begitu secara teknis mereka telah dianggap usang oleh teknik-teknik yang lebih maju, seperti Open Shortest Path First (OSPF) dan protokol OSI IS-IS. RIP juga telah diadaptasi untuk digunakan dalam jaringan IPv6, yang dikenal sebagai standar(RIP / RIP generasi berikutnya)

Minggu, 25 April 2010

subneting class C menjadi 4 subnet

Buat subneting class C menjadi 4 subnet, dengan ketentuan :

Subnet id 1 = 50 host
Subnet id 2 = 30 host
Subnet id 3 = 12 host
Subnet id 4 = 110 host

Jawab:

IP address : 192.168.0.6
Subnet Mask : 255.255.255.224
: 11111111.11111111.11111111.11100000
111 bit untuk menentukan jumlah subnet id
00000 bit untuk menentukan jumlah host

Jumlah subnet id : 23 = 8
Subnet id 1 : 192.168.0.00000000 (0)
Subnet id 2 : 192.168.0.00100000 (32)
Subnet id 3 : 192.168.0.01000000 (64)
Subnet id 4 : 192.168.0.01100000 (96)
Subnet id 5 : 192.168.0.10000000 (128)
Subnet id 6 : 192.168.0.10100000 (160)
Subnet id 7 : 192.168.0.11000000 (192)
Subnet id 8 : 192.168.0.11100000 (224)

Jumlah host : 25-2 = 30

Host pertama ------------------> Host terakhir
192.168.0.1 30 host 192.168.0.30
Subnet : 192.168.0.0
Broadcast : 192.168.0.31

2) Host pertama -------------------> Host terakhir
192.168.0.33 30 host 192.168.0.62
Subnet : 192.168.0.32
Broadcast : 192.168.0.63

3) Host pertama -------------------> Host terakhir
192.168.0.65 30 host 192.168.0.94
Subnet : 192.168.0.64
Broadcast : 192.168.0.95

4) Host pertama -------------------> Host terakhir
192.168.0.97 30 host 192.168.0.126
Subnet : 192.168.0.96
Broadcast : 192.168.0.127

5) Host pertama ------------------->Host terakhir
192.168.0.129 30 host 192.168.0.158
Subnet : 192.168.0.128
Broadcast : 192.168.0.159

6) Host pertama -------------------> Host terakhir
192.168.0.161 30 host 192.168.0.190
Subnet : 192.168.0.160
Broadcast : 192.168.0.191

7) Host pertama -------------------> Host terakhir
192.168.0.193 30 host 192.168.0.222
Subnet : 192.168.0.192
Broadcast : 192.168.0.221

2) Host pertama ------------------->Host terakhir
192.168.0.225 30 host 192.168.0254
Subnet : 192.168.0.224
Broadcast : 192.168.0.255

Dari referensi yang saya peroleh , banyaknya host yang dihasilkan dalam suatu subneting adalah seragam di setiap Subnet Id, seperti contoh diatas subnet id 1 sampai dengan subnet id 8 memiliki masing-masing 30 host. Dengan demikian saya baru bisa menjawab sebagian soal.

Bit untuk menentukan
jumlah host

Jumat, 16 April 2010

Lembar Analisa Jarkom



LEMBAR ANALISA PRAKTIKUM JARINGAN KOMPUTER PEMBUATAN KABEL JARINGAN
Media dan Peralatan Yang di gunakan
•Kabel UTP



•Konektor RJ45



•Tang Crimping


•LAN Tester


Berikut diagram kabel straight:



Urutan Ujung A

1.Putih Orange
2.Orange
3.Putih Hijau
4.Biru
5.Putih Biru
6.Hijau
7.Putih Coklat
8.Coklat

Urutan Ujung B

1.Putih Orange
2.Orange
3.Putih Hijau
4.Biru
5.Putih Biru
6.Hijau
7.Putih Coklat
8.Coklat
Kegunaan:

1.Menghubungkan PC dengan HUB/Switch
Penggunaan kabel straight yang paling umum adalah sambungan antara PC dan hub/switch. Dalam hal ini PC terhubung langsung ke hub/switch yang otomatis membuat cross-over secara internal dengan menggunakan sirkuit khusus. Dalam kasus penggunaan kabel CAT1, yang biasa digunakan pada saluran telepon, hanya 2 kawat yang digunakan. Koneksi tipe ini tidak memerlukan cross-over khusus karena telepon terhubung langsung ke soket telepon.



Gambar di atas menunjukkan kepada kita standar CAT5 straight yang biasa digunakan untuk menghubungkan PC ke HUB. Anda mungkin sedikit bingung karena Anda mungkin beranggapan data TX + dari satu sisi untuk tersambung ke TX + di sisi lainnya, namun bukan begitu cara kerjanya.
Bila Anda menghubungkan PC ke HUB, HUB yang akan secara otomatis menyilang kabel Anda dengan sirkuit internal, alhasil Pin 1 dari PC (TX +) dihubungkan ke Pin 1 HUB (yang terhubung ke RX +). Hal ini juga berlaku pada pin yang lain.
Jika tidak HUB tidak menyilang posisi pin melalui sirkuit internal (hal ini terjadi jika Anda menggunakan Uplink port pada hub) maka Pin 1 dari PC (TX +) akan terhubung ke Pin 1 HUB (dalam hal ini TX +). Jadi Anda cermati bahwa tidak peduli apapun yang kita lakukan pada port HUB (uplink atau normal), sinyal ditetapkan pada 8 pin pada PC, akan selalu tetap sama, maka setting pin di HUB yang akan berubah sesuai dengan posisi normal atau uplink.

Diagram Kabel Cross


Urutan Ujung A
1. Putih Orange
2. Orange
3. Putih Hijau
4. Biru
5. Putih Biru
6. Hijau
7. Putih Coklat
8. Coklat


Urutan Ujung B
1. Putih Hijau
2. Hijau
3. Putih Orange
4. Putih Coklat
5. Coklat
6. Orange
7. Biru
8. Putih Biru

Cara koneksi dengan kabel Cross Dari PC to PC
PC Pertama
Masukkan ke network connection di control panel :
Start menu run control panel
Setelah itu masuk ke bagian Network Connections
Kemudian pilih Local Area Network Connection

Klik kanan Local Area Network Connection, pilih properties

Di kotak dialog Local Area Network Connection Properties, di bagian tab General pilih Internet Protocol ( TCP/IP ) Kemudian Klik Properties

Setelah itu masukkan IP Addressnya 192.168.1.2, kemudian Netmasknya 255.255.255.0

Setelah itu klik button OK, kemudian Close
Nah untuk PC yang kedua tahapnya sama saja dengan yang diatas namun Alamat IP Addressnya berbeda dengan PC yang sebelumnya, anda dapat mengisinya dengan 192.168.1.1 atau dengan IP 192.168.1.x yang lain, terserah anda. Dengan catatan netmasknya harus sama dengan pc yang sebelumnya yakni 255.255.255.0
Kemudian langkah selanjutnya adalah melakukan konfigurasi network setup wizard untuk kedua PC tersebut, agar keduanya dapat saling terhubung sebagai satu workgroup.
Setelah selesai, lakukan ping dari salah satu PC tersebut ke PC lainnya… Jika tampilannya seperti ini maka PC anda telah terhubung satu sama lainnya.
C:\Documents and Settings\Al-k>ping 192.168.1.1
Pinging 192.168.1.1 with 32 bytes of data:
Reply from 192.168.1.1: bytes=32 time<1ms ttl="128" bytes="32" ttl="128" bytes="32" ttl="128" bytes="32" ttl="128" sent =" 4," received =" 4," lost =" 0" minimum =" 0ms," maximum =" 0ms," average =" 0ms">

TUGAS #5

Apa itu Subnetting dan Cara Subnetting

Subnetting adalah sebuah teknik yang mengizinkan para administrator jaringan untuk memanfaatkan 32 bit IP address yang tersedia dengan lebih efisien. Teknik subnetting membuat skala jaringan lebih luas dan tidak dibatas oleh kelas-kelas IP (IP Classes) A, B, dan C yang sudah diatur. Dengan subnetting, anda bisa membuat network dengan batasan host yang lebih realistis sesuai kebutuhan.


Sebenarnya subnetting itu apa dan kenapa harus dilakukan? Pertanyaan ini bisa dijawab dengan analogi sebuah jalan. Jalan bernama Gatot Subroto terdiri dari beberapa rumah bernomor 01-08, dengan rumah nomor 08 adalah rumah Ketua RT yang memiliki tugas mengumumkan informasi apapun kepada seluruh rumah di wilayah Jl. Gatot Subroto.

Ketika rumah di wilayah itu makin banyak, tentu kemungkinan menimbulkan keruwetan dan kemacetan. Karena itulah kemudian diadakan pengaturan lagi, dibuat gang-gang, rumah yang masuk ke gang diberi nomor rumah baru, masing-masing gang ada Ketua RTnya sendiri-sendiri. Sehingga ini akan memecahkan kemacetan, efiesiensi dan optimalisasi transportasi, serta setiap gang memiliki previledge sendiri-sendiri dalam mengelola wilayahnya. Jadilah gambar wilayah baru seperti di bawah:



Konsep seperti inilah sebenarnya konsep subnetting itu. Disatu sisi ingin mempermudah pengelolaan, misalnya suatu kantor ingin membagi kerja menjadi 3 divisi dengan masing-masing divisi memiliki 15 komputer (host). Disisi lain juga untuk optimalisasi dan efisiensi kerja jaringan, karena jalur lalu lintas tidak terpusat di satu network besar, tapi terbagi ke beberapa ruas-ruas gang. Yang pertama analogi Jl Gatot Subroto dengan rumah disekitarnya dapat diterapkan untuk jaringan adalah seperti NETWORK ADDRESS (nama jalan) dan HOST ADDRESS (nomer rumah). Sedangkan Ketua RT diperankan oleh BROADCAST ADDRESS (192.168.1.255), yang bertugas mengirimkan message ke semua host yang ada di network tersebut.





Masih mengikuti analogi jalan diatas, kita terapkan ke subnetting jaringan adalah seperti gambar di bawah. Gang adalah SUBNET, masing-masing subnet memiliki HOST ADDRESS dan BROADCAST ADDRESS.


Terus apa itu SUBNET MASK? Subnetmask digunakan untuk membaca bagaimana kita membagi jalan dan gang, atau membagi network dan hostnya. Address mana saja yang berfungsi sebagai SUBNET, mana yang HOST dan mana yang BROADCAST. Semua itu bisa kita ketahui dari SUBNET MASKnya. Jl Gatot Subroto tanpa gang yang saya tampilkan di awal bisa dipahami sebagai menggunakan SUBNET MASK DEFAULT, atau dengan kata lain bisa disebut juga bahwa Network tersebut tidak memiliki subnet (Jalan tanpa Gang). SUBNET MASK DEFAULT ini untuk masing-masing Class IP Address adalah sbb:

Subnetting menyediakan cara yang lebih fleksibel untuk menentukan bagian mana dari sebuah 32 bit IP adddress yang mewakili netword ID dan bagian mana yang mewakili host ID.
Dengan kelas-kelas IP address standar, hanya 3 kemungkinan network ID yang tersedia; 8 bit untuk kelas A, 16 bit untuk kelas B, dan 24 bit untuk kelas C. Subnetting mengizinkan anda memilih angka bit acak (arbitrary number) untuk digunakan sebagai network ID.
Dua alasan utama melakukan subnetting:

1. Mengalokasikan IP address yang terbatas supaya lebih efisien. Jika internet terbatas oleh alamat-alamat di kelas A, B, dan C, tiap network akan memliki 254, 65.000, atau 16 juta IP address untuk host devicenya. Walaupun terdapat banyak network dengan jumlah host lebih dari 254, namun hanya sedikit network (kalau tidak mau dibilang ada) yang memiliki host sebanyak 65.000 atau 16 juta. Dan network yang memiliki lebih dari 254 device akan membutuhkan alokasi kelas B dan mungkin akan menghamburkan percuma sekitar 10 ribuan IP address.
2. Alasan kedua adalah, walaupun sebuah organisasi memiliki ribuan host device, mengoperasikan semua device tersebut di dalam network ID yang sama akan memperlambat network. Cara TCP/IP bekerja mengatur agar semua komputer dengan network ID yang sama harus berada di physical network yang sama juga. Physical network memiliki domain broadcast yang sama, yang berarti sebuah medium network harus membawa semua traffic untuk network. Karena alasan kinerja, network biasanya disegmentasikan ke dalam domain broadcast yang lebih kecil – bahkan lebih kecil – dari Class C address.

Subnets
Subnet adalah network yang berada di dalam sebuah network lain (Class A, B, dan C). Subnets dibuat menggunakan satu atau lebih bit-bit di dalam host Class A, B, atau C untuk memperlebar network ID. Jika standar network ID adalah 8, 16, dan 24 bit, maka subnet bisa memiliki panjang network ID yang berbeda-beda.


Picture 1: Subnetting



Before Subnetting


After Subnetting

Gambar di Picture 1 menunjukkan sebuah network sebelum dan sesudah subnetting diaplikasikan. Di dalam jaringan yang tidak subnetkan, network ditugaskan ke dalam Address di Class B 144.28.0.0. Semua device di dalam network ini harus berbagi domain broadcast yang sama.
Di network yang ke dua, empat bit pertama host ID digunakan untuk memisahkan network ke dalam dua bagian kecil network – diidentifikasikan dengan subnet 16 dan 32. Bagi dunia luar (di sisi luar router), kedua network ini tetap akan tampak seperti sebuah network dengan IP 144.28.0.0. Sebagai contoh, dunia luar menganggap device di 144.28.16.22 dimiliki oleh jaringan 144.28.0.0. Sehingga, paket yang dikirim ke device ini dikirim ke router di 144.28.0.0. Router kemudian melihat bagian subnet dari host ID untuk memutuskan apakah paket diteruskan ke subnet 16 atau 32.

Subnet Mask

Agar subnet dapat bekerja, router harus diberi tahu bagian mana dari host ID yang digunakan untuk network ID subnet. Cara ini diperoleh dengan menggunakan angka 32 bit lain, yang dikenal dengan subnet mask. Bit IP address yang mewakili network ID tampil dengan angka 1 di dalam mask, dan bit IP address yang menjadi host ID tampil dengan angka 0 di dalam mask. Jadi biasanya, sebuah subnet mask memiliki deretan angka-angka 1 di sebelah kiri, kemudian diikuti dengan deretan angka 0.
Sebagai contoh, subnet mask untuk subnet di Picture 1 – dimana network ID yang berisi 16 bit network ID ditambah tambahan 4-bit subnet ID – terlihat seperti ini:

11111111 11111111 11110000 00000000

Atau dengan kata lain, 20 bit pertama adalah 1, dan sisanya 12 bit adalah 0. Jadi, network ID memiliki panjang 20 bit, dan bagian host ID yang telah disubnetkan memiliki panjang 12 bit.
Untuk menentukan network ID dari sebuah IP address, router harus memiliki kedua IP address dan subnet masknya. Router kemudian menjalankan operasi logika AND di IP address dan mengekstrak (menghasilkan) network ID. Untuk menjalankan operasi logika AND, tiap bit di dalam IP address dibandingkan dengan bit subnet mask. Jika kedua bit 1, maka hasilnya adalah, Jika salah satu bit 0, maka hasilnya adalah 0.
Sebagai contoh, berikut ini adalah contoh network address yang di hasilkan dari IP address menggunakan 20-bit subnet mask dari contoh sebelumnya.





Jadi network ID untuk subnet ini adalah 144.28.16.0
Subnet mask, seperti juga IP address ditulis menggunakan notasi desimal bertitik (dotted decimal notation). Jadi 20-bit subnet mask seperti contoh diatas bisa dituliskan seperti ini: 255.255.240.0
Subnet mask:

11111111 11111111 11110000 00000000
255. 255. 240. 0.

Jangan bingung membedakan antara subnet mask dengan IP address. Sebuah subnet mask tidak mewakili sebuah device atau network di internet. Cuma menandakan bagian mana dari IP address yang digunakan untuk menentukan network ID. Anda dapat langsung dengan mudah mengenali subnet mask, karena octet pertama pasti 255, 255 bukanlah octet yang valid untuk IP address class.

Aturan-aturan Dalam Membuat Subnet mask
1. Angka minimal untuk network ID adalah 8 bit. Sehingga, octet pertama dari subnet pasti 255.
2. Angka maximal untuk network ID adalah 30 bit. Anda harus menyisakan sedikitnya 2 bit untuk host ID, untuk mengizinkan paling tidak 2 host. Jika anda menggunakan seluruh 32 bit untuk network ID, maka tidak akan tersisa untuk host ID. Ya, pastilah nggak akan bisa. Menyisakan 1 bit juga tidak akan bisa. Hal itu disebabkan sebuah host ID yang semuanya berisi angka 1 digunakan untuk broadcast address dan semua 0 digunakan untuk mengacu kepada network itu sendiri. Jadi, jika anda menggunakan 31 bit untuk network ID dan menyisakan hanya 1 bit untuk host ID, (host ID 1 digunakan untuk broadcast address dan host ID 0 adalah network itu sendiri) maka tidak akan ada ruang untuk host sebenarnya. Makanya maximum network ID adalah 30 bit.
3. Karena network ID selalu disusun oleh deretan angka-angka 1, hanya 9 nilai saja yang mungkin digunakan di tiap octet subnet mask (termasuk 0). Tabel berikut ini adalah kemungkinan nilai-nilai yang berasal dari 9 bit.

Binary Octet Decimal
00000000 0
10000000 128
11000000 192
11100000 224
11110000 240
11111000 248
11111100 252
11111110 254
11111111 255



Private dan Public Address

Host apapun dengan koneksi langsung ke internet harus memiliki IP address unik global. Tapi, tidak semua host terkoneksi langsung ke internet. Beberapa host berada di dalam network yang tidak terkoneksi ke internet. Beberapa host terlindungi firewall, sehingga koneksi internet mereka tidak secara langsung.
Beberapa blok IP address khusus digunakan untuk private network atau network yang terlindungi oleh firewall. Terdapat tiga jangkauan (range) untuk IP address tersebut seperti di tabel berikut ini. Jika anda ingin menciptakan jaringan private TCP/IP, gunakan IP address di tabel ini.

CIDR Subnet Mask Address Range
10.0.0.0/8 255.0.0.0 10.0.0.1 – 10.255.255.254
172.16.0.0/12 255.255.240.0 172.16.1.1 – 172.31.255.254
192.168.0.0/16 255.255.0.0 192.168.0.1 – 192.168.255.254