internet 3

Tampilkan postingan dengan label internet 3. Tampilkan semua postingan
Tampilkan postingan dengan label internet 3. Tampilkan semua postingan

internet 3



-- Arsitektur, Sejarah, Standarisasi dan Trend
Zaman sekarang, Internet dan World Wide Web (WWW) sangat populer di seluruh dunia.
kita  yang Memerlukan  aplikasi yang berbasis Internet, seperti E-Mail danakses Web melalui internet. Sehingga makin banyak aplikasi bisnis yang berkembangberjalan di atas internet. Transmission Control Protocol/Internet Protocol (TCP/IP) yaitu  protokol yang melandasi internet dan jaringan dunia. 
-- Model Arsitektur TCP/IP
Protokol TCP/IP terbentuk dari 2 komponen yaitu Transmission Control Protocol (TCP) dan
Internet Protocol (IP).
-- Internetworking
Tujuan dari TCP/IP yaitu  untuk membangun suatu koneksi antar jaringan (network), dimana
dinamakan internetwork, atau intenet, yang menyediakan pelayanan komunikasi antar
jaringan yang memiliki bentuk fisik yang beragam. Tujuan yang jelas yaitu  mengkaitkan 
pemilik  (hosts) pada jaringan yang berbeda, atau mungkin terpisahkan secara geografis
pada area yang luas.
disini   Contoh Internet – Dimana keduanya terlihat dalam sama sebagai 1 logikal jaringan
Internet dapat digolongkan menjadi beberapa group jaringan, antara lain:
 Backbone: Jaringan besar yang mengkaitkan  antar jaringan lainnya. Contoh :
NSFNET yaitu   jaringan backbone dunia di Amerika, EBONE yaitu   jaringan backbone di Eropa, dan lainnya. Jaringan regional, contoh: jaringan antar kampus. Jaringan yang bersifat komersial dimana menyediakan koneksi menuju backbone
kepada pelanggannya. 
 Jaringan lokal, contoh: jaringan dalam sebuah kampus.Aspek lain yang penting dari TCP/IP yaitu  membentuk suatu standarisasi dalam
komunikasi. Tiap-tiap bentuk fisik suatu jaringan memiliki teknologi yang berbeda-beda,
sehingga diperlukan pemrograman atau fungsi khusus untuk dipakai  dalam komunikasi.
TCP/IP memberi  fasilitas khusus yang bekerja diatas pemrograman atau fungsi khusus  ini  dari masing-masing fisik jaringan. Sehingga bentuk arsitektur dari fisik jaringan akan tersamarkan dari pemakai  dan pembuat aplikasi jaringan. Dengan TCP/IP, pemakai  tidak perlu lagi memikirkan bentuk fisik jaringan untuk melakukan sebuah komunikasi.
contoh  pada disini    untuk dapat berkomunikasi antar 2 jaringan, diperlukan komputer yang terhubung dalam suatu perangkat yang dapat meneruskan suatu paket data dari jaringan yang satu ke jaringan yang lain. Perangkat ini  dinamakan  Router. Selain iturouter juga dipakai  sebagai pengarah jalur (routing).
Untuk dapat mengidentifikasikan host diperlukan sebuah alamat, dinamakan  alamat IP (IP
address). jika  sebuah host memiliki beberapa perangkat jaringan (interface), seperti router, maka setiap interface harus memiliki sebuah IP address yang unik. IP address terdiri dari 2 bagian, yaitu :
IP address = <nomer jaringan><nomer host>
-- Lapisan (layer) pada Protokol TCP/IP
Seperti pada perangkat lunak, TCP/IP dibentuk dalam beberapa lapisan (layer). Dengan dibentuk dalam layer, akan mempermudah untuk pengembangan dan pengimplementasian.
Antar layer dapat berkomunikasi ke atas maupun ke bawah dengan suatu penghubung
interface. Tiap-tiap layer memiliki fungsi dan kegunaan yang berbeda dan saling mendukung
layer diatasnya. Pada protokol TCP/IP dibagi menjadi 4 layer,  Layer Aplikasi (Aplications) Layer aplikasi dipakai  pada program untuk berkomunikasi memakai  TCP/IP. Contoh aplikasi antara lain Telnet dan File Transfer Protocol (FTP). Interface yang dipakai  untuk saling berkomunikasi yaitu  nomer port dan socket. Layer Transport Layer transport berfungsi  pengiriman data secara end-to-end ke sisi remote. Aplikasi yang beragam dapat melakukan komunikasi secara serentak (simulaneously). Protokol pada layer transport yang paling sering dipakai  yaitu  Transmission Control Protocol (TCP), dimana
berfungsi  pengiriman data secara connection-oriented, pencegahan duplikasi data, congestion control dan flow control. Protokol lainnya yaitu  User Datagram
Protocol (UDP), dimana berfungsi  pengiriman
connectionless, jalur yang tidak reliabel. UDP banyak dipakai  pada aplikasi yang Memerlukan  kecepatan tinggi dan dapat metoleransi terhadap kerusakan data. Layer Internetwork Layer Internetwork dinamakan juga layer internet atau
layer network, dimana memberi  “vitual network” padainternet. Internet Protocol (IP) yaitu  protokol yang paling penting. IP berfungsi  routing pada jaringan dalam pengiriman data. Protokol lainnya antara lain : IP, ICMP,IGMP, ARP, RARP
Layer Network Interface Layer network interface dinamakan  juga layer link atau layer
datalink, yaitu   perangkat keras pada jaringan.
Contoh : IEEE802.2, X.25, ATM, FDDI, dan SNA.
--Aplikasi TCP/IP
Level tertinggi pada layer TCP/IP yaitu  aplikasi. Dimana layer ini melakukan komunikasi
sehingga dapat berinteraksi dengan pemakai .
sifat  dari protokol aplikasi antara lain:
 yaitu  program aplikasi yang dibuat oleh pemakai , atau aplikasi yang yaitu  standar dari produk TCP/IP. Contoh aplikasi yaitu   produk dari
TCP/IP antara lain :
- TELNET, terminal interaktif untuk mengakses suatu remote pada internet.
- FTP (File Transfer Protocol), transfer file berkecepatan tinggi antar disk.
- SMTP (Simple Mail Transfer Protocol), sistem bersurat di internet 
 memakai  mekanisme TCP atau UDP.
 memakai  model interaksi client/server.
-- Model Client/Server
TCP yaitu  peer-to-peer, protokol yang bersifat connection-oriented. Tidak ada hubungan
tuan dan budak (master/slave), namun  banyak aplikasi yang bersifat client/server.
SERVER yaitu  aplikasi yang memberi  pelayanan kepada user internet. CLIENT yaitu yang meminta pelayanan. Aplikasi bisa memiliki bagian server dan bagian client, dimana dapat berjalan secara bersamaan dalam 1 sistem. Server yaitu  progam yang dapat menerima permintaan (request), melakukan pelayanan yang diminta, lalu  mengembalikan sebagai reply. Server dapat melayani multi request bersamaan. Server bekerja dengan cara menunggu request pada port yang sudah terdaftar, sehingga client dapat dengan mudah mengirimkan data ke port pada server.
--Bridge, Router dan Gateway
Ada beberapa cara untuk memberi  koneksi ke jaringan. Pada internetworking dapat dilakukan dengan router. Pada bagian ini akan dibedakan antara bridge, router dan gateway dalam mengakses jaringan. Bridge mengkaitkan  jaringan pada layer network interface dan meneruskan frame. Bridge juga berfungsi sebagai MAC relay. 
Bridge juga transparant terhadap IP, artinya jika  suatu host mengirim IP datagram ke host yang lain, IP tidak akan di awasi oleh bridge dan langsung
cross ke host yang dituju. Router mengkaitkan  jaringan pada layer internetwork dan mengarahkan jalur paket data.  Router mampu memilih jalur yang terbaik untuk pengiriman data, sebab memiliki routing. Disebab kan router tidak transparant terhadap IP, maka router akan meneruskan paket berdasar  alamat IP dari data.Gateway mengkaitkan  jaringan pada layer diatas router dan bridge. Gateway mendukung pemetaan alamat dari jaringan yang satu ke jaringan yang lain. Gateway yaitu  pintu keluar suatu host menuju ke jaringan diluar.
--Sejarah Internet
Jaringan mulai dibangun pada kisaran tahun 60an dan 70an, dimana mulai banyak penelitian
tentang paket-switching, collision-detection pada jaringan lokal, hirarki jaringan dan teknik
komunikasi lainnya. Semakin banyak yang mengembangkan jaringan, namun  hal ini memicu  semakin banyak perbedaan dan membuat jaringan harus berdiri sendiri tidak bisa dihubungkan antar tipe jaringan yang berbeda. Sehingga untuk menggabungkan jaringan dari group yang berbeda
tidak bisa terjadi. Terjadi banyak perbedaan dari interface, aplikasi dan protokol.
Situasi perbedaan ini mulai di teliti pada tahun 70an oleh group peneliti Amerika dari
Defence Advanced Research Project Agency (DARPA). Mereka meneliti tentang
internetworking, selain itu ada organisasi lain yang juga bergabung seperti ITU-T (dengan nama CCITT) dan ISO. Tujuan dari penelitian ini  membuat suatu protokol, sehinggaaplikasi yang berbeda dapat berjalan walaupun pada sistem yang berbeda.
Group resmi yang meneliti dinamakan  ARPANET network research group, dimana sudah 
melakukan meeting pada oktober 1971. lalu  DARPA melanjukan penelitiannya tentang
host-to-host protocol dengan memakai  TCP/IP, sekitar tahun 1978. Implementasi awal internet pada tahun 1980, dimana ARPANET memakai  TCP/IP. Pada tahun 1983, DARPA memutuskan agar semua komputer terkoneksi ke ARPANET memakai  TCP/IP. DARPA mengontak Bolt, Beranek, and Newman (BBN) untuk membangun TCP/IP untuk
Berkeley UNIX di University of California di Berkeley, untuk mendistribusikan kode sumber bersama dengan sistem operasi Berkeley Software Development (BSD), pada tahun 1983
(4.2BSD). Mulai saat itu, TCP/IP menjadi terkenal di seluruh universitas dan badan penelitian
dan menjadi protokol standar untuk komunikasi. 
-- ARPANET 
Suatu badan penelitian yang dibentuk oleh DARPA, dan yaitu  “grand-daddy of packet switching”. ARPANET yaitu  awal dari internet. ARPANET memakai  komunikasi 56Kbps namun  sebab  perkembangan akhirnya tidak mampu mengatasi trafik jaringan yang berkembang ini .
-- NFSNET
NSFNET, National Science Foundation (NSF) Network. Terdiri dari 3 bagian internetworking di Amerika, yaitu :
 Backbone, jaringan yang terbentuk dari jaringan tingkat menengah (mid-level) dan jaringan supercomputer. Jaringan tingkat menengah (mid-level) terdiri dari regional, berbasis disiplin dan
jaringan konsorsium superkomputer. Jaringan kampus, akademik maupun komersial yang terhubung ke jaringan tingkatmenengah.
--pemakaian  Internet secara komersial
pemakaian  internet berawal dari Acceptable Use Policy (AUP) tahun 1992, dimana menyebutkan internet dapat dipakai  untuk komersial. Internet Service Provider mulai membangun bisnis diantaranya PSINet dan UUNET, lalu  menyusul CERFNet dan membentuk Commercial Internet Exchange (CIX). Keberadaan internet makin berkembang dan semakin banyak public exchange point (IXP), dapat dilihat di : http://www.ep.net.
-- Internet2
Perkembangan internet disusul dengan project internet2 yaitu   Next Generation Internet (NGI). Tujuan dari internet2 antara lain :
 Mendemostrasikan aplikasi baru yang dapat meningkatkan peneliti untuk melakukan
kolaborasi dalam penelitian Membangun advanced communication infrastructures Menyediakan middleware dan perangkat development
 Mendukung QoS untuk penelitian dan komuniti pendidikan Mempromosikan next generation dari teknologi komunikasi Mengkoordinasi standarisasi  Mengkapitalisasi sistem partner antara pemerintah dan sektor organisasi
 Melakukan perubahan jaringan dari internet ke internet2 Mempelajari efek samping dari infrastruktur yang baru pada pendidikan tinggi dan
komunitas internet Informasi tentang internet2 dapat dilihat di http://www.internet2.edu
--Model Referensi dari Open System Interconnection (OSI) OSI (Open System Interconnection) model (ISO 7498) mendifinisikan 7 layer model dari komunikasi data. 
Tiap layer memiliki fungsi yang saling terhubung dengan layer di atasnya. 
--Standarisasi TCP/IP 
TCP/IP semakin popular diantara developer dan pemakai , sebab  itu perlu adanya standarisasi. Standarisasi di kelola oleh Internet Architecture Board (IAB) IAB mengacu pada Internet Engineering Task Force (IETF) untuk membuat standar baru.
Dimana standarisasi memakai  RFC. Untuk Internet Standar Process, memakai  RFC 2026 – The Internet Standard Process – Revision 3, dimana didalamnya berisi tentang protokol, prosedur, dan konvensi yang dipakai  dari oleh internet.
-- Request For Comment (RFC)
Internet Protocol suite masih dikembangkan dan perkembangannya memakai  mekanisme Request For Comment (RFC). Protokol baru yang dikembangkan oleh peneliti akan diajukan dalam bentuk Internet Draft (ID). lalu  akan di evaluasi oleh IAB. jika  disetujui maka akan lahir RFC dengan seri baru untuk aplikasi atau protokol ini , sehingga developer dapat memakai  standar ini .
-- Internet Standard
Proposal standar, draft standar, dan protokol standar yaitu  bagian dari Internet Standard Track. Sesudah  proposal diakui maka proposal ini  akan memiliki nomer, yang dinamakan  standard number (STD). Contoh : Domain Name Systems (DNS) memakai  STD 13 dan dijelaskan pada RFC 1034 dan 1035, sehingga dapat dituliskan “STD-
13/RFC1034/RFC1035”. Untuk info lengkapnya dapat diakses di http://www.ietf.org
--Internet Masa Depan
Mencoba untuk memperkirakan pemakaian  internet dimasa mendatang yaitu  tidak mudah.
sebab  itu pada bagian ini akan diberikan contoh kecil pemakaian  internet untuk masa
depan.
--Aplikasi Multimedia
pemakaian  bandwidth semakin lama akan semakin efisien, banyak teknologi yang dapat dipakai  untuk mengatur pemakaian  bandwidth salah satunya Dense Wave Division
Multiplexing (DWDM). 
pemakaian  bandwidth banyak dipakai  pada aplikasi multimedia, antara lain Voice over
Internet Protocol (VoIP) dan masih banyak lagi lainnya, bahkan untuk video conference.
Sekarang untuk mendengarkan lagu dengan internet sudah dapat kita rasakan, dan
dikedepannya akan dimungkinkan semua perangkat terkoneksi melalui internet dan masih
banyak lagi lainnya. Atau mungkin anda sendiri akan diberi IP Address...
--pemakaian  untuk komersial
pemakaian  teknologi Virtual Private Networking (VPN) semakin banyak dipakai  oleh
perusahaan. VPN dipakai  untuk mengamankan komunikasi yang dipakai  oleh sebuah
perusahaan. Misal untuk Virtual meeting.
--Wireless Internet
pemakaian  aplikasi tanpa kabel sangat meningkatkan mobilitas seseorang, sehingga
kebutuhan internet wireless akan semakin populer. Dengan adanya teknologi bluetooth, Wifi
IEEE802.11, Wi-MAX dan yang lainnya akan mendukung internet tanpa kabel.

-- Model Referensi OSI
OSI yaitu  referensi komunikasi dari Open System Interconnection. OSI model dipakai 
sebagai titik referensi untuk membahas spesifikasi protokol.
-- Layer pada OSI
OSI model terdiri dari 7 layer. Dimana bagian atas dari layernya (layer 7,6,dan 5) difokuskan
untuk bentuk pelayanan dari suatu aplikasi. Sedangkan untuk layer bagian bawahnya (layer 4,
3, 2 dan 1) berorientasikan tentang aliran data dari ujung satu ke ujung yang lainnya. 
Tabel  Model Referensi OSI
Nama layer Fungsi Contoh
Aplikasi
(layer 7)
Aplikasi yang saling berkomunikasi antar
komputer. Aplikasi layer mengacu pada
pelayanan komunikasi pada suatu aplikasi.
Te l n e t , HTTP, FTP,
WWW Browser, NFS,
SMTP, SNMP
Presentasi
(Layer 6)
Pada layer bertujuan untuk mendefinisikan
format data, seperti ASCII text, binary dan
JPEG. 
JPEG, ASCII, TIFF, GIF,
MPEG, MIDI
Sesi
(Layer 5)
Sesi layer mendefinisikan bagaimana memulai,
mengontrol dan mengakhiri suatu percakapan
(dinamakan session)
RPC, SQL, NFS, SCP
Transport
(Layer 4)
Pada layer 4 ini bisa dipi l ih apakah
memakai  protokol yang mendukung error-
recovery atau tidak. Melakukan multiplexing
terhadap data yang datang, mengurutkan data
yang datang jika  datangnya tidak berurutan.
TCP, UDP, SPX
Network
(Layer 3)
Layer ini mendefinisikan pengiriman data dari
ujung ke ujung. Untuk melakukan pengiriman
pada layer ini juga melakukan pengalamatan.
Mendifinisikan pengiriman jalur (routing).
IP, IPX, Appletalk DDP
Data Link
(layer 2)
Layer ini mengatur pengiriman data dari
interface yang berbeda. Semisal pengiriman data
dari ethernet 802.3 menuju ke High-level Data
Link Control (HDLC), pengiriman data WAN.
IEEE 802.2/802.3, HDLC,
Frame relay, PPP, FDDI,
ATM
Physical
(Layer 1)
Layer ini mengatur tentang bentuk interface
yang berbeda-beda dari sebuah media transmisi.
Spesifikasi yang berbeda misal konektor, pin,
pemakaian  pin, arus listrik yang lewat,
encoding, sumber cahaya 
E IA / T IA - 2 3 2 , V 3 5 ,
EIA/TIA- 449, V.24,
RJ45, Ethernet, NRZI,
NRZ, B8ZS
-- Konsep dan Kegunaan Layer
Banyak kegunaan yang didapat dari pembagian fungsi menjadi yang lebih kecil atau yang
dinamakan  layer. Kegunaan yang pasti yaitu  mengurangi kompleksitas, sehingga dapat
didefinisikan lebih detil.
Contoh kegunaannya antara lain:
 Manusia dapat membahas dan mempelajari tentang protokol secara detil
 Membuat perangkat menjadi bentuk modular, sehingga pemakai  dapat
memakai  hanya modul yang dibutuhkan
 Membuat lingkungan yang dapat saling terkoneksi
 Mengurangi kompleksitas pada pemrograman sehingga memudahkan produksi
 Tiap layer dapat diberikan pembuka dan penutup sesuai dengan layernya
 Untuk berkomunikasi dapat dengan segera memakai  layer dibawahnya.
-- Layer Aplikasi
Pada layer ini berurusan dengan program komputer yang dipakai  oleh user. Program
komputer yang berhubungan hanya program yang melakukan akses jaringan, namun  bila yang
tidak berarti tidak berhubungan dengan OSI.
Contoh: Aplikasi word processing, aplikasi ini dipakai  untuk pengolahan text sehingga
program ini tidak berhubungan dengan OSI. namun  bila program ini  ditambahkan fungsi
jaringan misal pengiriman email, maka aplikasi layer baru berhubungan disini.
-- Layer Presentasi
Pada layer ini bertugan untuk mengurusi format data yang dapat dipahami oleh berbagai
macam media. Selain itu layer ini juga dapat mengkonversi format data, sehingga layer
berikutnya dapat memafami format yang diperlukan untuk komunikasi.
Contoh format data yang didukung oleh layer presentasi antara lain : Text, Data, Graphic,
Visual Image, Sound, Video. Format data pada layer presentasiSelain itu pada layer presentasi ini juga berfungsi sebagai enkripsi data.
--Layer Sesi (Session)
Sesi layer mendefinisikan bagaimana memulai, mengontrol dan mengakhiri suatu percakapan
(dinamakan session). Contoh layer session : NFS, SQL, RPC, ASP, SCP Mengkoordinasi berbagai aplikasi pada saat berinteraksi antar komputer
--Layer Transport
Pada layer 4 ini bisa dipilih apakah memakai  protokol yang mendukung error-recovery
atau tidak. Melakukan multiplexing terhadap data yang datang, mengurutkan data yang
datang jika  datangnya tidak berurutan.
Pada layer ini juga komunikasi dari ujung ke ujung (end-to-end) diatur dengan beberapa cara,
sehingga urusan data banyak dipengaruhi oleh layer 4 ini.
Fungsi yang diberikan oleh layer transport :
 Melakukan segmentasi pada layer atasnya
 Melakukan koneksi end-to-end
 Mengirimkan segmen dari 1 host ke host yang lainnya
 Memastikan reliabilitas data
--Melakukan segmentasi pada layer atasnya
Dengan memakai  OSI model, berbagai macam jenis aplikasi yang berbeda dapat/dikirimkan pada jenis transport yang sama. Transport yang terkirim berupa segmen persegmen. Sehingga data dikirim berdasar  first-come first served.
-- Melakukan koneksi end-to-end
teorinya , sebuah perangkat untuk melakukan komunikasi dengan perangkat lainnya, perangkat yang dituju harus menerima koneksi terlebih dahulu sebelum mengirimkan atau menerima data.
Proses yang dilakukan sebelum pengiriman data, seperti pada disini    
- Pengirim (sender) mengirimkan sinyal Synchronize terlebih dahulu  ke tujuan
- Penerima (receiver) mengirimkan balasan dengan sinyal Negotiate Connection
- Penerima mengirimkan Synchronize ulang, apa benar pengirim akan mengirimkandata
- Pengirim membalas dengan sinyal Acknowledge dimana artinya sudah siap untuk mengirimkan data
- Connection establish
- lalu  segmen dikirim
-- Mengirimkan segmen dari 1 host ke host yang lainnya
Proses pengiriman yang terjadi pada layer transport berupa segmen, sedangkan pada layer
bawahnya berupa paket dan pada layer 2 berupa frame dan dirubah menjadi pengiriman bit
pada layer 1. 
--Memastikan reliabilitas data
Pada waktu pengiriman data sedang berjalan, kepadatan jalur bisa terjadi (congestion).
Alasan terjadinya congestion antara lain: komputer berkecepatan tinggi mengirimkan data lebih cepat dibandingkan  jaringannya, jika  beberapa komputer mengirimkan data ke tujuan yang sama secara simultan.
Untuk mengatasi hal ini  setiap perangkat dilengkapi dengan yang namanya kendali 
aliran (flow control). Dimana jika  ada pengirim yang mengirimkan data terlalu banyak, maka dari pihak penerima akan mengirmkan pesan ke pengirim bahwa jangan mengirim data lagi, sebab  data yang sebelumnya sedang di proses. Dan jika  sudah  selesai diproses, si penerima akan mengirimkan pesan ke pengirim untuk melanjutkan pengiriman data. Dinamakan data yang reliabel artinya paket data datang sesuai dengan urutan pada saatdikirimkan. Protokol akan gagal jika  terjadi paket yang hilang, rusak, terjadi duplikasi,
atau menerima paket data dengan urutan yang berbeda. Untuk memastikan data yang
terkirim, si penerima harus mengirimkan acknowledge untuk setiap data yang diterima pada
segmen.Contoh: Pengirim mengirimkan data dengan format window segmen sebesar 1, maka
penerima akan mengirimkan acknowledge no 2. jika  pengirm mengirimkan data dengan
format window segmen sebesar 3, maka penerima akan mengirimkan acknowledge no 4
jika  penerimaan data benar. 
Teknik konfirmasi data dengan acknowledge bekerja mengirimkan informasi data mana yang
terjadi kesalahan. 
-- Layer Network
Fungsi utama dari layer network yaitu  pengalamatan dan routing. Pengalamatan pada layernetwork yaitu  pengalamatan secara logical, 
Routing dipakai  untuk pengarah jalur paket data yang akan dikirim. Dimana routing ada 2 
macam yaitu Routed dan Routing Protocol.
--Layer Data Link
Fungsi yang diberikan pada layer data link antara lain :
- Arbitration, pemilihan media fisik 
- Addressing, pengalamatan fisik
- Error detection, menentukan apakah data sudah  berhasil terkirim
- Identify Data Encapsulation, menentukan pola header pada suatu data
--Arbitrasi
Penentuan waktu pengiriman data yang tepat jika  suatu media sudah terpakai, hal ini perlu
melakukan suatu deteksi sinyal pembawa. Pada Ethernet memakai  metode Carrier Sense Multiple Access / Collision Detection (CSMA/CD). 
Pada jaringan yang dapat melakukan akses secara bersamaan simultan. Maka bila Host A
mengirimkan data ke Host D, maka Host B dan C akan melakukan deteksi jalur, dan jika 
jalur sedang dipakai maka Host B dan C akan menunggu terlebih dahulu. Hal ini dapat
mencegah terjadinya collision. 
-- Addressing
Pengalamatan yang dilakukan pada layer data link bersifat fisik, yaitu memakai  Media
Access Control (MAC). MAC ditanamkan pada interface suatu perangkat jaringan.MAC
berukuran 48bit dengan format 12 heksadesimal.
--Error Detection
Teknik yang dipakai  yaitu  Frame Check Sequence (FCS) dan Cyclic Redundancy Check
(CRC).
--Identify Data Encapsulation
Mengidentifikasikan format data yang lewat apakah termasuk ehternet, token ring, framerelay dan sebagainya.
Tabel Tipe Protokol Encoding
Protokol Data Link Bagian (Field) Header Ukuran
802.3 Ethernet 
802.5 Token Ring
DSAP Header 802.2 1 byte
802.3 Ethernet
802.5 Token Ring
SSAP Header 802.2 1 byte
802.3 Ethernet
802.5 Token Ring
Protocol Type Header SNAP 2 byte
Ethernet (DIX) Ethertype Header Ethernet 2 byte
HDLC Cisco proprietary Extra Cisco Header 2 byte
Frame Relay RFC 2427 NLPID RFC1490 1 byte
Frame Relay RFC 2427 L2 / L3 protocol ID Q.933 2 byte / ID Frame Relay RFC 2427 SNAP Protocol Type Header SNAP 2 bye
--Interaksi antar Layer pada OSI
Proses bagaimana komputer berinteraksi dengan memakai  layer pada OSI, memiliki 
dua fungsi umum, antara lain :
 Tiap layer memberi  pelayanan pada layer di atasnya sesuai dengan spesifikasi
protokolnya
 Tiap layer mengirimkan informasi komunikasi melalui software dan hardware yang
sama antar komputer.
Sebuah data dibuat oleh aplikasi pada host A, contoh seseorang menuliskan email. Pada tiap
layer ditambahkan header dan dilanjutkan ke layer berikutnya, 
Contoh : pada layer transport menyalurkan data dan header yang ditambahkannya ke layer
network, sedangkan pada layer network ditambahkan header alamat tujuannya supaya data
bisa sampai pada komputer tujuannya.
Sesudah  aplikasi memuat data, software dan hardware pada komputer menambahkan header
dan trailernya. Pada layer fisik dapat memakai  medianya untuk mengirimkan sinyal
 menunjukkan proses pemecahan header dan
trailer sehingga pada akhirnya data dapat diterima oleh pemakai  di host B.
jika  komunikasi yang terjadi antar 2 komputer masih harus melewati suatu media
tertentu, semisal router.
 -- Data Enkapsulasi
Konsep penempatan data dibalik suatu header dan trailer untuk tiap layer dinamakan  enkapsulasi
(encapsulation). terlihat pada tiap layer diberikan suatu headertambahan, lalu  ditambahkan lagi header pada layer berikutnya, sedangkan pada layer 2 selain ditambahkan header juga ditambahkan trailer. Pada layer 1 tidak memakai  header dan trailer. 
Pada pemrosesan layer 5, 6 dan 7 terkadang tidak diperlukan adanya header. Ini disebab kan
tidak ada informasi baru yang perlu diproses. Sehingga untuk layer ini  bisa dianggap 1
proses. Sehingga langkah-langkah untuk melakukan data enkapsulasi dapat dijabarkan antaralain  :
Langkah 1 Membuat data – artinya sebuah aplikasi memiliki data untuk dikirim
Langkah 2 Paketkan data untuk di transportasikan – artinya pada layer transport
ditambahkan header dan masukkan data dibalik header. Pada proses ini
terbentuk L4PDU.
Langkah 3 Tambahkan alamat tujuan layer network pada data – layer network membuat header network, dimana didalamnya terdapat juga alamat layer network, dan tempatkan L4PDU dibaliknya. Disini terbentuk L3PDU. Langkah 4 Tambahkan alamat tujuan layer data link pada data – layer data link membuat header dan menempatkan L3PDU dibaliknya, lalu  menambahkan trailer sesudah nya. Disini terbentu L2PDU.
Langkah 5 Transmit dalam bentu bit – pada layer fisikal, lakukan encoding pada sinyal
lalu  lakukan pengiriman frame.
Sehingga pemrosesannya akan mirip dengan model TCP/IP. Pada tiap layer terdapat LxPDU
(Layer N Protocol Data Unit), dimana yaitu  bentuk dari byte pada header-trailer pada
data. Pada tiap-tiap layer juga terbentuk bentukan baru, pada layer 2 PDU termasuk header
dan trailer dinamakan  bentukan frame. Pada layer 3 dinamakan  paket (packet) atau terkadang
datagram. Sedangkan pada layer 4 dinamakan  segmen (segment). 
--Model referensi OSI dan TCP/IP
jika  dibandingkan antara model OSI dan model TCP/IP 
 Perangkat Jaringan
Bab ini berisikan tentang berbagai macam perangkat jaringan yang dapat dilalui oleh
protokol TCP/IP, begitu juga dengan media transmisi yang dipakai  hingga perangkat
penyalurnya.
-- Network Interface
--Local Area Network (LAN)
LAN yaitu  jaringan komputer yang mencover area lokal, seperti rumah, kantor atau group dari bangunan./LAN sekarang lebih banyak memakai  teknologi berdasar IEEE 802.3 Ethernet switch, atau denganWi-Fi. Kebanyakan berjalan pada kecepatan 10, 100, atau 1000 Mbps.
Perbedaan yang menyolok antara Local Area Network (LAN) dengan Wide Area Network (WAN) yaitu /memakai  data lebih banyak, hanya untuk daerah yang kecil, dan tidak memerlukan sewa jaringan. Walaupun sekarang ethernet switch yang paling banyak dipakai  pada layer fisik dengan memakai TCP/IP sebagai protokol, setidaknya masih banyak perangkat lainnya yang dapat dipakai  untuk/membangun LAN. LAN dapat dihubungkan dengan LAN yang lain memakai  router dan leased line untuk membentuk WAN. Selain itu dapat terkoneksi ke internet dan bisa terhubung dengan LAN yang lain dengan memakai  tunnel dan teknologi VPN. Perangkat yang banyak dipakai  LAN :
Perangkat LAN
Teknologi yang dipakai  pada LAN :
--Ethernet dan IEEE 802.x Local Area Network
Perangkat jaringan yang paling banyak dipakai  dengan standarisasi IEEE 802.3, format
data dapat dilihat pada disini    3 .30.
disini   3.30 Format frame untuk Ethernet dan IEEE 802.3
Pada layer data link dipakai  IEEE 802.2 yaitu Logical Link Controler (LLC) dimana 
dipakai  pada Media Access Control (MAC).
Beberapa teknologi Ethernet antara lain 
Untuk teknologi Ethernet dipakai  format :
[ x ][ y ][ z ]
Contoh: 10BaseT, dimana artinya
10, yaitu  kecepatan dengan satuan Mbps. Selain 10 ada juga 100, 1000
Base, yaitu  teknologi yang dipakai  berupa Baseband. Selain itu ada juga Broadband
T, yaitu  Twisted Pair, dimana media yang dipakai  yaitu  kabel berpilin (twisted pair)
Ethernet
Coax
10Base-5 
dinamakan teknologi thick ethernet. Dimana perangkat yang
dipakai   Teknologi ini dipakai  pada
jaringan Token Ring (IEEE 802.5), dimana jaringan yang terbentuk seperti
lingkaran.
Keterangan :
- tap : tidak perlu memotong kabel
- transceiver : dipakai  sebagai pengirim / penerima, collision 
detection, dan isolasi electric
- AUI : Attachment User Interface
- dipakai  untuk jaringan backbone
- Jarak maksimum untuk tiap segmen = 500m
- Jumlah maksimum host per segmen = 100
- Jarak minimum antar 2 station = 2.5m
- Jarak maksimum antar 2 station = 2.8km
10Base-2
dinamakan teknologi thin ethernet. Dimana perangkat yang dipakai  
Keterangan :
- memakai  BNC konektor
- dipakai  pada LAN perkantoran
- Jarak maksimum segmen = 185m
- Jumlah maksimum station per segmen = 30
- Jarak minimum antar 2 station = 0.5m
- Jarak maksimum antar 2 station = 925m
Tembaga (cooper)
10Base-T 
Teknologi jaringan untuk LAN dimana memakai  hub sebagai repeater.
Ilustrasi Ethernet 10BaseT 
jika  memakai  T berarti memakai  media Twisted Pair, dan bila
memakai  F berarti memakai  media Fiber Optic. Untuk perangkat
disisi pemakai  dinamakan  juga Network Interface Card (NIC).
Fiber
10Base-F
Teknologi yang memakai  fiber optic dan banyak dipakai  untuk
mengkaitkan  antar gedung. Jarak maksimum segmen yang diperbolehkan
yaitu  2000m.
Fast Ethernet
Copper
100Base-T2
Data dikirimkan melalui 2 pasang kabel tembaga
100Base-T4
Jaringan ethernet dengan kecepatan hingga 100 (fast ethernet). Jarak
maksimum per segmen yaitu  100m dengan memakai  kabel twisted pair
kategori 3.
100Base-Tx
Jaringan ehternet berkecepatan tinggi 100Mbps. Jarak maksimum persegmen
yaitu  100m full duplex. Jaringan ini memakai  kabel twisted pair.
Fiber
100Base-FX
Jaringan ehternet berkecepatan tinggi 100Mbps. Jarak maksimum per segmen
yaitu  2000m full duplex dengan memakai  media 2 kabel fiber optik.
100Base-SX
Jaringan ethernet memakai  2 kabel fiber optik untuk transmit dan receive dengan 
jarak maksimum 300m
100Base-BX
Jaringan ethernet memakai  1 kabel fiber optik dengan tipe singlemode.
Gigabit Ethernet
Fiber
1000Base-SX
Jaringan ethernet dengan kecepatan 1000Mbps. Dengan memakai  media
fiber optik dengan jarak maksimum per segmen 550m. Fiber optik yang
dipakai  yaitu  tipe multimode (50, 62.5 mikron)
1000Base-LX
Jaringan ethernet dengan kecepatan 1000Mbps. Dengan memakai  media
fiber optik dengan jarak maksimum per segmen hingga 5000m. Fiber optik
yang dipakai  yaitu  tipe singlemode (10 mikron) atau multimode (50, 62.5
mikron)
1000Base-CX
Jaringan ethernet dengan kecepatan 1000Mbps. Dengan memakai  media
kabel Twisted Pair yaitu 2 pasang STP. Jarak maksimum per segmen yaitu 
25m.
Cooper
1000Base-TX
Jaringan ethernet dengan kecepatan 1000Mbps. Dengan memakai  media
kabel Twisted Pair yaitu 4 pasang UTP. Jarak maksimum per segmen yaitu 
100m.
10Gigabit Ethernet
Fiber
LAN Phy
10GBase-SR
Jaringan 10Gigabit untuk jarak pendek (short-range), dipakai  untuk jarak 26m hingga
82m. Bisa mencapai 300m jika  memakai  50um 2000MHz-km multimode FO
10GBase-LRM
Mencapai jarak 220m dengan memakai  FDDI-grade 62.5 µm multimode FO.
10GBase-LR
Mencapai jarak 10km dengan memakai  1310 nm single-mode FO
10GBase-ER
Mencapai jarak 40km dengan memakai  1550 nm single-mode FO
10GBase-LX4
Jaringan 10Gigabit dengan memakai  teknologi wavelength division  multiplexing
hingga mencapai jarak 240m – 300m. Bisa mencapai 10km dengan memakai  FO
single-mode dengan ukuran 1310nm.
WAN Phy
10GBase-SW, 10GBase-LW, dan 10GBase-EW dipakai  untuk jaringan WAN, dipakai 
bersama dengan OC-192/STM-64 SDH/SONET.
Cooper
10GBase-CX4
memakai  4 jalur kabel tembaga, hingga mencapai 15m.
10GBase-T
memakai  kabel UTP / STP dengan category 6 dan 7.
Hub, Switch dan Router
Perangkat yang dipakai  untuk teknologi ini antara lain:
- Hub, Repeater: perangkat ini bekerja pada layer 1
- Switch, bridge: perangkat ini bekerja pada layer 2
- Router: perangkat ini bekerja pada layer 3
Sehingga menurut OSI layer perangkat yang dapat dipakai  seperti pada disini    3 .35.
disini   3.35 Perangkat Jaringan sesuai dengan Layer
--Token Ring
Token Ring dikembangkan oleh IBM pada tahun 1980 dan menjadi standar IEEE 802.5. Menjadi
berkembang sesudah  melebihi kemampuan dari 10Base-T. 
Token ring yaitu  jaringan bertopologi star, dengan Multistation Access Unit (MAU) sebagai pusat
jaringan. MAU berfungsi seperti HUB hanya saja data bergerak dengan 1 arah. Data bergerak seperti
lingkaran pada MAU.
Untuk mengakses jaringan diperlukan yang namanya token. Token dilempar ke jaringan dan akan
menerima data dengan dikirimkan kembali ke token si pengirim.
Dengan adanya teknologi switch pada Ethernet, token ring menjadi tidak banyak dipakai .
-- Fiber Distribution Data Interface (FDDI)
FDDI yaitu  standar untuk jaringan fiber optik dengan kecepatan 100Mbps. 
 RFC yang menerangkan FDDI
yaitu  RFC 1188.
FDDI bekerja dengan memakai  2 jalur berbentuk RING, dimana jika  terjadi
kerusakan pada suatu station maka pada station sebelumnya akan membuat loopback
sehingga jaringan tidak terputus.
--Wide Area Network (WAN)
WAN yaitu  jaringan komputer dimana memiliki cakupan daerah yang lebih luas. Contoh dari WAN yaitu internet.
Jenis koneksi WAN dapat dibedakan menjadi 
Akronim
WAN
Nama WAN Bandwidth
Maksimum
pemakaian  Tipe Pelayanan
(service)
POTS Plain Old Telephone
Service
4 KHz analog Standar Circuit Switching
ISDN Integrated Services
Digital Network
128 Kbps Data dan voice secara
bersamaan
X.25 X.25 R a d i o P a k e t ,
workshore
Packet-Swithing
Frame Relay Frame Relay 1.544Mbps Flexible workshore
ATM Asynchronous
Transfer Mode
622Mbps High Power network Cell-Swithing
SMDS Switched
Multimegabit Data
Service
1 . 5 4 4 &
44.736Mbps
MAN, variant dari
ATM
T1, T3, E1,
E3
T1, T3, E1, E3 1.544 & 44.736
Mbps
Telecomunication Dedicated Digital
xDSL Digital Subcriber
Line
384 kbps Te k n o l o g i b a r u
melalui line telepon
Dial-up
Modem
Modem 56kbps Teknologi lama yang
memakai  jalur
telepon
Lainnya
Cable Modem Cable Modem 10Mbps TV Kabel
Terresterial
Wireless
Wireless <5Mbps Microwave & link
dengan laser
Satellite
Wireless
Wireless <5Mbps Microwave & link
dengan laser
SONET Synchronous Optical
Network
9.992Mbps J a r i n g a n c e p a t
memakai  FO
Perangkat yang dipakai  untuk jaringan WAN
Cara mengkaitkan  perangkat WAN ada 2 macam yaitu, mengkaitkan  langsung secara point-to-point 
atau melalui perangkat swithing lainnya.
Contoh perangkat WAN :
.-- Serial Line IP (SLIP)
SLIP yaitu  standar yang dipakai  pada jaringan point-to-point dengan koneksi serial
dimana berjalan protokol TCP/IP, diterangkan pada RFC 1055. Protokol ini sudah  diganti oleh
Point-to-Point Protocol (PPP). Contoh koneksi yang memakai  SLIP yaitu  hubungan
antar PC dengan memakai  null-modem
.-- Point-to-Point Protocol (PPP)
PPP diterangkan di standard protocol nomer 51, dan RFC 1661 dan RFC 1662. PPP memiliki
3 komponen inti, yaitu :
1. memakai  enkapsulasi datagram melalui link serial
2. Link Control Protocol dipakai  untuk menyambungkan, menkonfigurasi, dan
testing koneksi data link
3. Network Control Protocol dipakai  untuk mengkaitkan  protokol yang berbeda.
Phase yang dilakukan untuk membuat koneksi dengan PPP yaitu:
1. Pembentukan link dan negosiasi konfigurasi
2. Mengukur kualiti dari link
3. Authentikasi 
4. Negosiasi configurasi protokol layer Network 
5. Pemutusan link
Untuk media yang lainnya PPP memakai  enkapsulasi melalui PPP.
Perangkat yang biasa dipakai  pada komunikasi PPP antara lain modem.
.--Integrated Services Digital Network (ISDN)
Komunikasi ini memakai  enkapsulasi PPP melalui ISDN, dimana dibahas pada
RFC1618. 
ISDN Basic Rate Interface (BRI) mendukung 2 B-Channel dengan kapasitas 64kbps dan
16kbps D-Channel dipakai  untuk kendali  informasi. B-Channel hanya bisa dipakai 
untuk voice saja atau data saja.
ISDN Primary Rate Interface (PRI) mendukung beberapa B-Channel (biasanya 30) dan
64kbps D-Channel. 
Perangkat ISDN memakai  tipe perangkat DCE/DTE.
-- X.25
Enkapsulasi IP melalui X.25 didokumentasikan di RFC1356. X.25 yaitu  interface 
penghubung antara host dengan packet switching, dan banyak dipakai  pada ISDN. 
Layer pada X.25: 
- Physical
o yaitu  interface antar station dengan node
o DTE pada perangkat user
o DCE pada node
o memakai  X.21
o yaitu  sequence dari frame
- Link
o Link Access Protocol Balance (LAPB), yaitu  bagian dari HDLC
- Packet
o yaitu  eksternal virtual circuit
o yaitu  logical circuit antar subcriber
pemakaian  X.25 dapat dilihat pada disini    3 .45.
disini   3.45 pemakaian  X.25
.--Frame Relay
Frame Relay yaitu  pengembangan dari X.25.
sifat  frame relay :
- Call Control dilakukan pada koneksi logical.
- Multiplexing dan switching dilakukan di layer 2
- Tidak ada flow control dan error control pada setiap hop
- Flow control dan error control dilakukan di layer atasnya
- memakai  single data frame.
PPP over SONET dan SDH Circuit
Synchronous Optical Network disingkat SONET, Synchronous Digital Hierarchy disingkat
SDH link, koneksi PPP over SONET atau SDH didokumentasikan di RFC1619.
Kecepatan dasar dari PPP over SONET/SDH yaitu  STS-3c/STM-1 pada kecepatan 155.52
Mbps. 
--Asynchronous Transfer Mode (ATM)
ATM mengirimkan data secara potongan diskrit. Memiliki koneksi multi logical melalui
koneksi fisik tunggal. Paket ATM yang terkirim pada koneksi logic dinamakan  cell. ATM mampu
meminimalis error dan flow control. ATM memiliki data rate 25.6Mbps sampe 622.08Mbps.
-- Media Transmisi
--Media Terarah (Guided Transmission Data)
Suatu media yang dipakai  untuk mengirimkan data, dimana arah ujung yang satu dengan
ujung yang lainnya sudah jelas, contoh : kabel.
---- Coaxial
Kabel data yang memakai  material tembaga dimana terdapat 2 bagian yaitu : 
- Kabel inti ditengah
- Kabel serabut disisi samping dengan dipisahkan oleh suatu isolator
Kabel ini memakai  konektor Bayonet Nut Connector (BNC)
----Twisted Pair
Kabel berpilin (Twisted Pair), memakai  kabel berpasangan dimana tujuannya untuk
menghilangkan efek crosstalk. Banyak dipakai  untuk jaringan LAN, disebab kan mampu
mengirimkan bandwidth dengan jumlah yang besar.
Kabel ini memakai  konektor seri Registered Jack (RJ), dan tergantung dari jenis
kategorinya. Untuk kategori 2 memakai  RJ11 sedangkan untuk kategori 5 keatas
memakai  RJ45.
Tabel Daftar Kategori Kabel Berpilin
Kategori (Category) Data rate maksimum pemakaian 
CAT 1 1 Mbps (1MHz) Analog voice, ISDN
CAT 2 4 Mbps Token Ring
CAT 3 16 Mbps Voice dan data 10BaseT
CAT 4 20 Mbps 16 Mbps Token Ring
CAT 5 100Mbps
1000Mbps (4 pasang)
ATM
CAT 5E 1000Mbps Ethernet
CAT 6 Mencapai 400MHz Superfast broadband
CAT 6E Mencapai 500MHz 10GBaseT
CAT 7 Mencapai 1.2GHz Full Motion Video Teleradiology
Jenis kabel berpilin menurut pelindungnya dibagi menjadi :
- Unshielded Twisted Pair (UTP)
disini   3.48 UTP
- Shielded Twisted Pair (STP)
disini   3.49 STP
- Screened Shielded Twisted Pair (S/STP)
disini   3.50 S/STP
- Screened Unshielded Twisted Pair (S/UTP) / Foiled Twisted Pair (FTP)
Untuk pemasangan kabelnya mengikuti aturan TIA/EIA-586-A/B
jika  kedua ujung memakai  aturan yang sama, kabel ini  dinamakan  Straight-Through, sedangkan bila berbeda dinamakan  Cross-Over.
--Fiber Optic
Jenis kabel yang satu ini tidak memakai  tembaga (cooper), melainkan serat optik.
Dimana sinyal yang dialirkan berupa berkas cahaya. Mampu mengirimkan bandwidth lebih
banyak. Banyak dipakai  untuk komunikasi antar Backbone, LAN dengan kecepatan tinggi.
disini   3.54 (a) Tampak samping, (b) FO dengan 3 core berdasar  jumlah sumber cahaya yang masuk pada core FO, kabel FO dibagi menjadi 2 
yaitu:
- Multimode, jumlah sumber lebih dari 1. memakai  diameter core dengan ukuran 
50 micron – 100 micron
- Singlemode, jumlah sumber 1. memakai  diameter core dengan ukuran 2 – 8 
micron
Tabel   Tipe Konektor FO
Connector Insertion Loss Repeatability Tipe Fiber Kegunaan FC
0.50-1.00 dB 0.20 dB SM, MM Datacom,
Telecommunicati
ons
FDDI
0.20-0.70 dB 0.20 dB SM, MM Fiber Optic
Network
LC
0.15 db (SM)
0.10 dB (MM)
0.2 dB SM, MM High Density
Interconnection
MT Array
0.30-1.00 dB 0.25 dB SM, MM High Density
Interconnection
SC
0.20-0.45 dB 0.10 dB SM, MM Datacom
SC Duplex
0.20-0.45 dB 0.10 dB SM, MM Datacom
ST
Typ. 0.40 dB (SM)
Typ. 0.50 dB (MM)
Typ. 0.40 dB (SM)
Typ. 0.20 dB (MM)
SM, MM Inter-/Intra-
Building,
Security, Navy
--Media Tidak Terarah (Un-Guided Transmission Data)Suatu media yang dipakai  untuk mengirimkan data, dimana arah ujung yang satu dengan ujung yang lainnya tersebar, contoh : nirkabel (wireless).
Komunikasi ini mengirimkan sinyal ke udara berdasar  spektrum elektromagnetik
-- Transmisi Radio
Perkembangan teknologi komunikasi radio sangat pesat, pemakaian  wireless-LAN sudah
semakin populer. Untuk mengirimkan data memakai  komunikasi radio ada beberapa cara
yaitu :
a. Memancarkan langsung, sesuai dengan permukaan bumi
b. Dipantulkan melalui lapisan atmosfir
Komunikasi radio ini memakai  frekuensi khusus supaya tidak memicu 
interference dengan pemakaian  frekuensi lainnya, frekuensi yang boleh dipakai  dinamakan 
ISM band. ISM singkatan dari Industrial, Scientific and Medical. Frekuensi yang bisa
dipakai  antara lain :
- 900 MHz
- 2.4 GHz
- 5.8 GHz
--Komunikasi Satelit
Komunikasi ini dipakai  untuk komunikasi jarak jauh atau antar benua. Dimana untuk
mengkaitkan nya diperlukan teknologi satelit. Menurut jaraknya satelit bisa dikategorikan
menjadi :
- Geostationary
- Medium-Earth Orbit
- Low-Earth Orbit
Komunikasi satelit memakai  frekuensi / band. 
Tabel  Frekuensi Kerja Satelit
Band Downlink Uplink Bandwidth Permasalahan
L 1.5 GHz 1.6GHz 15 MHz Bandwidth rendah, saluran penuh
S 1.9 GHz 2.2 GHz 70 MHz Bnadwidth rendah, saluran penuh
C 4.0 GHz 6 GHz 500 MHz Interferensi Teresterial
Ku 11 GHz 14 GHz 500 MHz Hujan
Ka 20 GHz 30 GHz 3500 MHz Hujan, harga perangkat
Untuk menghubungi site yang lain, bisa dilakukan dengan Very Small Aperture Terminal
(VSAT). VSAT yaitu  stasiun bumi 2 arah dengan antena parabola dengan diameter sekitar 3
– 10 meter. 
--Internet Protocol
IP yaitu  standard protokol dengan nomer STD 5. Standar ini juga termasuk untuk ICMP,
dan IGMP. Spesifikasi untuk IP dapat dilihat di RFC 791, 950, 919, dan 992 dengan update
pada RFC 2474. IP juga termasuk dalam protokol internetworking.
--Pengalamatan IP
Alamat IP yaitu  representasi dari 32 bit bilangan unsigned biner. Ditampilkan dalam
bentuk desimal dengan titik. Contoh 10.25--02.23 yaitu  contoh valid dari IP. 
-- Alamat IP (IP Address)
Pengalamatan IP dapat di lihat di RFC 1166 – Internet Number. Untuk mengidentifikasi suatu
host pada internet, maka tiap host diberi IP address, atau internet address. jika  host
ini  tersambung dengan lebih dari 1 jaringan maka dinamakan  multi-homed dimana memiliki
1 IP address untuk masing-masing interface. IP Address terdiri dari :
IP Address = <nomer network><nomer host>
Nomer network diatur oleh suatu badan yaitu Regional Internet Registries (RIR), yaitu :
 American Registry for Internet Number (ARIN), bertanggung jawab untuk daerah
Amerika Utara, Amerika Selatan, Karibia, dan bagian sahara dari Afrika
 Reseaux IP Europeens (RIPE), bertanggung jawab untuk daerah Eropa, Timur Tengah
dan bagian Afrika
 Asia Pasific Network Information Center (APNIC), bertanggung jawab untuk daerah
Asia Pasific
IP address yaitu  32 bit bilangan biner dimana bisa dituliskan dengan bilangan desimal
dengan dibagi menjadi 4 kolom dan dipisahkan dengan titik. 
Bilangan biner dari IP address 128.2.7.9 yaitu  :
10000000 00000010 00000111 00001001
pemakaian  IP address yaitu  unik, artinya tidak diperbolehkan memakai  IP address
yang sama dalam satu jaringan.
4.--Pembagian Kelas Alamat IP (Class-based IP address)
Bit pertama dari alamat IP memberi  spesifikasi terhadap sisa alamat dari IP. Selain itu
juga dapat memisahkan suatu alamat IP dari jaringan. Network. Alamat Network (network
address) dinamakan juga sebagai netID, sedangkan untuk alamat host (host address) biasa
dinamakan hostID.
Ada 5 kelas pembagian IP address yaitu :
Dimana :
 Kelas A : memakai  7 bit alamat network dan 24 bit untuk alamat host. Dengan
ini memungkinkan adanya 27-2 (126) jaringan dengan 224-2 (16777214) host, atau
lebih dari 2 juta alamat.
 Kelas B : memakai  14 bit alamat network dan 16 bit untuk alamat host. Dengan
ini memungkinkan adanya 214-2 (16382) jaringan dengan 216-2 (65534) host, atau
sekitar 1 juga alamat.
 Kelas C : memakai  21 bit alamat network dan 8 bit untuk alamat host. Dengan
ini memungkin adanya 221-2 (2097150) jaringan dengan 28-2 (254) host, atau sekitar
setengah juta alamat.
 Kelas D : Alamat ini dipakai  untuk multicast
 Kelas E : dipakai  untuk selanjutnya.
Kelas A dipakai  untuk jaringan yang memiliki jumlah host yang sangat banyak.
Sedangkan kelas C dipakai  untuk jaringan kecil dengan jumlah host tidak sampai 254.
sedangkan untuk jaringan dengan jumlah host lebih dari 254 harus memakai  kelas B.
4.1.3 Alamat IP yang perlu diperhatikan 
 Alamat dengan semua bit = 0, dipakai  untuk alamat jaringan (network address). 
Contoh 19--68.1.0
 Alamat dengan semua bit = 1, dipakai  untuk alamat broadcast (broadcast address). 
Contoh  19--68.1.255
 Alamat loopback, alamat dengan IP 127.0.0.0 dipakai  sebagai alamat loopback 
dari sistem lokal.
4.2 IP Subnet
Perkembangan internet yang semakin pesat, menyebabkan pemakaian  IP semakin banyak,
dan jumlah IP yang tersedia semakin lama semakin habis. Selain itu untuk pengaturan
48
jaringan juga semakin besar sebab  jaringannya yang semakin besar. Untuk itu perlu
dilakukan “pengecilan” jaringan yaitu dengan cara membuat subnet (subneting).
Sehingga bentuk dasar dari IP berubah dengan pertambahan subnetwork atau nomer subnet,
menjadi 
<nomer jaringan><nomer subnet><nomer host>
Jaringan bisa dibagi menjadi beberapa jaringan kecil dengan membagi IP address dengan
pembaginya yang dinamakan  sebagai subnetmask atau dinamakan netmask. Netmask memiliki
format sama seperti IP address.
Contoh pemakaian  subnetmask :
 Dengan memakai  subnetmask 255.255.255.0, artinya jaringan kita memiliki 
28-2 (254) jumlah host.
 Dengan memakai  subnetmask 255.255.255.240, artinya pada kolom terakhir
pada subnet ini  240 bila dirubah menjadi biner menjadi 11110000. Bit 0
menandakan jumlah host kita, yaitu 24-2 (14) host.
--1 Tipe dari subneting
Ada 2 tipe subneting yaitu static subneting dan variable length subneting.
---- Static subneting
Subneting yang dipakai  hanya memperhatikan dari kelas dari IP address. Contoh untuk
jaringan kelas C yang hanya memiliki 4 host dipakai  subneting 255.255.255.0.  Dalam hal
pemakaian  ini akan memudahkan sebab  jika  ada penambahan host tidak perlu lagi
merubah subnetmask, namun  akan melakukan pemborosan sebanyak 250 alamat IP.
----Variable Length Subneting Mask (VLSM)
Subneting yang dipakai  berdasar  jumlah host. Sehingga akan semakin banyak jaringan
yang bisa dipisahkan.
--1.3 Gabungan antara static subneting dan variable length subneting
pemakaian  subneting biasanya memakai  static subneting. namun  sebab  suatu keperluan
sebagian kecil jaringan ini  memakai  variable length subneting. Sehingga
diperlukan router untuk menggabungkan kedua jaringan ini .
--2 Cara perhitungan subnet 
---- memakai  static subneting
Suatu jaringan memakai  kelas A, memakai  IP 10.25--02.23. 
00001010 11111100 01100110 00010111 Alamat 32 bit
10 252    102           23 Alamat desimal
Artinya 10 sebagai alamat network dan 25--02.23 sebagai alamat host.

lalu  administrator menentukan bahwa bit 8 sampe dengan bit ke 24 yaitu  alamat
subnet. Artinya memakai  subnetmask 255.255.255.0 (11111111 11111111 11111111
00000000 dalam notasi bit). Dengan aturan bit 0 dan 1 maka jaringan ini  memiliki 216-2
(65534) subnet dengan masing-masing subnet memiliki jumlah host maksimum sebanyak 28-
2 (254).
-- memakai  variable length subneting
Suatu jaringan memakai  kelas C, dengan IP address 165.214.32.0. Jaringan ini 
ingin membagi jaringannya menjadi 5 subnet dengan rincian :
 Subnet #1 : 50 host
 Subnet #2 : 50 host
 Subnet #3 : 50 host
 Subnet #4 : 30 host
 Subnet #5 : 30 host
Hal ini tidak bisa dicapai dengan memakai  static subneting. Untuk contoh ini, jika 
memakai  subneting 255.255.255.192 maka hanya akan terdapat 4 subnet dengan
masing-masing subnet memiliki 64 host, yang dibutuhkan 5 subnet. jika  memakai 
subnet 255.255.255.224, memang bisa memiliki sampe 8 subnet namun  tiap subnetnya hanya
memiliki jumlah host maksimal 32 host, padahal yang diinginkan ada beberapa subnet
dengan 50 host.
Solusinya yaitu  dengan membagi subnet menjadi 4 subnet dengan memakai 
subnetmask 255.255.255.192 dan subnet yang terakhir dibagi lagi dengan memakai 
subnetmask 255.255.255.224. Sehingga akan didapatkan 5 subnet, dengan subnet pertama
sampe ketiga bisa mendapatkan maksimal 64 host dan subnet ke empat dan kelima memiliki
32 host.
-- IP Routing
Fungsi utama dari sebuah IP yaitu  IP routing. Fungsi ini memberi  mekanisme pada
router untuk menyambungkan beberapa jaringan fisik yang berbeda. Sebuah perangkat dapat
difungsikan sebagai host maupun router.
Ada 2 tipe IP routing yaitu : direct dan indirect.
--1 Tipe Routing
---- Direct Routing
jika  host kita dengan tujuan berada dalam 1 jaringan. Maka data kita bila dikirimkan
ketujuan akan langsung dikirimkan dengan mengenkapsulasi IP datagram pada layer phisical.
Hal ini dinamakan  dengan Direct Routing.
----Indirect Routing
jika  kita ingin mengirimkan suatu data ketujuan lain, dimana tujuan ini  berada di
jaringan yang berbeda dengan kita. Maka untuk itu dibutuhkan 1 IP address lagi yang
dipakai  sebagai IP gateway. Alamat pada gateway pertama (hop pertama) dinamakan  indirect
route dalam algoritma IP routing. Alamat dari gateway pertama yang hanya diperlukan oleh
pengirim untuk mengirimkan data ke tujuan yang berada di jaringan yang berbeda.
 – Host C memiliki direct route terhadap Host B dan D, dan memiliki
indirect route terhadap host A melalui gateway B
-- Table Routing
Menentukan arah dari berbagai direct route dapat dilihat dari list akan interface. Sedangkan
untuk list jaringan dan gatewaynya dapat dikonfigurasi lalu . List ini  dipakai 
untuk fasilitas IP routing. Informasi ini  disimpan dalam suatu tabel yang dinamakan  tabel
arah (Routing Table).
Tipe informasi yang ada pada table routing antara lain :
1. Direct route yang didapat dari interface yang terpasang
2. Indirect route yang dapat dicapai melalui sebuah atau beberapa gateway
3. Default route, yaitu   arah akhir jika  tidak bisa terhubung melalui direct
maupun indirect route.
 Table Routing dari host D akan berisikan :
Destination Router Interface
129.7.0.0 E Lan0
128.15.0.0 D Lan0
128.10.0.0 B Lan0
Default B Lan0
127.0.0.1 Loopback Lo
Host D terhubung pada jaringan 128.15.0.0 maka dipakai  direct route untuk jaringan ini.
Untuk menghubungi jaringan 129.7.0.0 dan 128.10.0.0, diperlukan indirect route melalui E
dan B.
Sedangkan table routing untuk host F, berisikan :
Destination Router Interface
129.7.0.0 F Wan0
Default E Wan0
127.0.0.1 Loopback Lo
sebab  jaringan selain 129.7.0.0 harus dicapai melalui E, maka host F hanya memakai 
default route melalui E.
--Algoritma IP routing
Metode Pengiriman – Unicast, Broadcast, Multicast dan Anycast
Pengiriman data pada IP address umumnya yaitu  1 paket pengiriman, hal ini dinamakan 
Unicast. Koneksi unicast yaitu  koneksi dengan hubungan one-to-one antara 1 alamat
pengirim dan 1 alamat penerima. 
Untuk penerima dengan jumlah lebih dari 1 ada beberapa cara pengiriman yaitu broadcast,
multicast dan anycast. Dapat dilihat pada 
disini   4.65 Mode pengiriman data
--Broadcast
Pengiriman data dengan tujuan semua alamat yang berada dalam 1 jaringan, mode
pengiriman data seperti ini dinamakan  Broadcast. Aplikasi yang memakai  metode ini akan
mengirimkan ke alamat broadcast. Contoh 19--68.0.255, jika  mengirimkan data ke
alamat ini maka semua host yang berada dalam jaringan ini  akan menerima data.
--Multicast
Pengiriman data dengan tujuan alamat group dalam 1 jaringan, mode pengiriman data ini
dinamakan  Multicast. Alamat ini memakai  kelas D, sehingga beberapa host akan didaftarkan
dengan memakai  alamat kelas D ini. jika  ada pengirim yang mengirimkan data ke
alamat kelas D ini akan diteruskan menuju ke host-host yang sudah terdaftar di IP kelas D ini.
--Anycast
jika  suatu pelayanan memakai  beberapa IP address yang berbeda, lalu  jika 
ada pengirim mengirimkan data menuju ke pelayanan ini  maka akan diteruskan ke salah
satu alamat IP ini , mode pengiriman ini dinamakan  Anycast. Contoh: jika  ada 5 server
dengan aplikasi FTP yang sama, maka jika  ada user mengakses pelayanan FTP ini 
akan diarahkan ke salah satu dari 5 server ini .
--IP Private - Intranet
Kebutuhan IP address beriringan dengan meningkatnya pemakaian  internet. sebab  jumlah
IP address yang dipakai  semakin lama semakin habis. Untuk mengatasi permasalahan ini
dilakukan pemakaian  IP Private. 
IP Private ini diatur dalam RFC 1918 – Address alocation for Private Internets. RFC ini
menjelaskan pemakaian  IP address yang harus unik secara global. Dan pemakaian 
beberapa bagian dari IP address ini  yang dipakai  untuk tidak terhubung langsung ke
internet. Alamat IP ini dipakai  untuk jalur intranet. Alamat-alamat IP address ini 
yaitu  :
 10.0.0.0 : dipakai  untuk jaringan kelas A
 17--6.0.0 – 172.31.0.0 : dipakai  untuk jaringan kelas B
 19--68.0.0 – 19--68.255.0 : dipakai  untuk jaringan kelas C
Jaringan yang memakai  alamat ini  tidak akan diroutingkan dalam internet.
--Classless Inter-Domain Routing (CIDR)
jika  kita Memerlukan  IP address dengan jumlah host 500 dengan kelas IP C, maka kita
harus memiliki 2 subnet. sebab  untuk kelas C maksimal host yaitu  254. Untuk masing-
masing subnet ini  harus dimasukkan kedalam table routing pada perangkat router di
jaringan ini . 
Hal ini  memicu  jumlah entri dalam table routing akan semakin membengkak dan
akan menguras sumber daya perangkat. Untuk mengatasi hal ini  dapat dipakai 
Classless Inter-Domain Routing (CIDR). CIDR yaitu  routing yang tidak memperhatikan
kelas dari alamat IP. CIDR dibahas pada RFC 1518 sampai 1520.
Contoh : Untuk mengkoneksikan 500 host dengan alamat IP kelas C diperlukan 2 subnet. IP
a d d r e s s y a n g d i g u n a k a n a d a l a h 1 9 2 . 1 6 8 . 0 . 0 / 2 5 5 . 2 5 5 . 2 5 5 . 0 d e n g a n
19--68.1.0/255.255.255.0, sehingga table routing pada perangkat router juga ada 2 subnet.
Dengan memakai  CIDR table routing pada perangkat cukup dengan memakai 
alamat 19--68.0.0/255.255.252.0 dengan ini hanya diperlukan 1 entri table routing untuk
terkoneksi dengan jaringan ini .
--IP Datagram
Unit yang dikirim dalam jaringan IP yaitu  IP datagram. Dimana didalamnya terdapat 
header dan data yang berhubungan dengan layer diatasnya. 
Dimana :
 VERS : versi dari IP yang dipakai . Versi 4 artinya memakai  IPv4, 6 artinya 
IPv6.
 HLEN : panjang dari IP header
 Service : no urut quality of service (QoS)
 Total Length : jumlah dari IP datagram
 ID :  nomer data dari pengirim jika  terjadi fragmentasi
 Flags : penanda fragmentasi
 Fragment offset : no urut data fragmen bisa data sudah  di fragmentasi
 Time to Live (TTL) : lama waktu data boleh berada di jaringan, satuan detik
 Protocol : nomer dari jenis protokol yang dipakai 
 Header checksum : dipakai  untuk pengecekan jika  data rusak
 Source IP address : 32 bit alamat pengirim
 Destination IP Address : 32 bit alamat tujuan
 IP options : dipakai  jika  data diperlukan pengolahan tambahan
 Padding : dipakai  untuk membulatkan jumlah kolom IP options menjadi 32
 Data : data yang dikirimkan berikut header di layer atasnya.
--Fragmentasi
Dalam perjalanannya menuju tujuan, data akan melewati berbagai macam interface yang
berbeda. Dimana masing-masing interface memiliki kemampuan yang berbeda untuk
mengirimkan frame data. Kemampuan ini dinamakan  Maximum Transfer Unit (MTU). Batas
maksimum data dapat ditempatkan dalam 1 frame.
IP dapat memisahkan data yang terkirim menjadi sebesar MTU. Proses pemisahan ini dinamakan 
fragmentasi (fragmentation).
 Internetworking
--Internet Control Message Protocol (ICMP)
saat  router atau host tujuan menginformasikan sesuatu kerusakan pada IP datagram,
protokol yang dipakai  yaitu  Internet Control Message Protocol (ICMP). Karakterisitk
dari ICMP antara lain :
 ICMP memakai  IP
 ICMP melaporkan kerusakan
 ICMP tidak dapat melaporkan kerusakan dengan memakai  pesan ICMP, untuk
menghindari pengulangan
 Untuk data yang terfragmentasi, pesan ICMP hanya mengirimkan pesan kerusakan
pada fragmentasi pertama
 Pesan ICMP tidak merespon dengan mengirimkan data secara broadcast atau
multicast
 ICMP tidak akan merespon kepada IP datagram yang tidak memiliki header IP
pengirim
 Pesan ICMP dapat membuat proses kerusakan pada IP datagram
Spesifikasi ICMP dapat dilihat pada RFC 792 dengan update RFC 950.
.-- Pesan ICMP
Pesan ICMP dikirimkan dalam IP Datagram. Pada IP header, protokol akan berisikan no 1
(ICMP). Dan type of service (TOS) bernilai 0 (routine). 
Keterangan :
 Type : jenis pesan :
o 0 : Echo reply
o 3 : Destination Unreacheable
o 4 : Source quench
o 5 : Redirect
o 8 : Echo
o 9 : Router Advertisement
o 10 : Router Solicitation
o 11 : Time exceeded
o 12 : Parameter problem
o 13 : Timestamp request
o 14 : Timestamp reply
o 15 : Information request (kadaluwarsa)
o 16 : Information reply (kadaluwarsa)
o 17 : Address mask request
o 18 : Address mask reply
o 30 : Traceroute
o 31 : Datagram conversion error
o 32 : Mobile host redirect
o 33 : IPv6 Where-are-you
o 34 : IPv6 I-Am-Here
o 35 : Mobile registration request
o 36 : Mobile registration reply
o 37 : Domain name request
o 38 : Domain name reply
o 39 : SKIP
o 40 : Photuris
 Code : berisikan balasan laporan kerusakan dari pesan ICMP yang dikirim.
 Checksum : dipakai  untuk pengecekan kerusakan pesan ICMP yang dikirim.
 Data : berisikan pesan ICMP yang dikirimkan.
Penjelasan tentang jenis pesan ICMP
-- Echo (8) dan Echo reply (0)
Echo dipakai  untuk mengecek keaktifan dari suatu host. Dimana jika  host ini  aktif
akan dibales dengan pesan Echo Reply.
--Destination Unreachable (3)
Pesan ini berasal dari suatu router dimana memberitahukan bahwa host tujuan tidak dapat 
dicapai (unreachable).
-- Source Quench (4)
Pesan ini berasal dari suatu router dimana router tidak memiliki ruang buffer untuk
meneruskan datagram.
.--Redirect (5)
Pesan ini berasal dari router, dimana host ini  harus mengirimkan datagram berikutnya
kepada router yang berada pada jaringan yang dituju oleh pesan ICMP. 
-- Router Advertisement (9) dan Router Solicitation (10)
Pesan ini dipakai  oleh router yang memiliki  protokol discover. Dimana router akan 
memberi  IP address kepada jaringannya dan host yang menerima IP address ini  akan
membalas dengan pesan Router Solicitation.
5.--.6 Time Exceeded (11)
Pesan ini berasal dari router, dimana pesan yang dikirim sudah kehabisan waktu sesuai batas
TTL.
5.--.7 Parameter Problem (12)
Pesan ini diakibatkan pada proses persiapan untuk mengirimkan pesan ICMP ada kesalahan.
-- Timestamp Request (13) dan Timestamp Reply (14)
Pesan ini dipakai  untuk proses debug.
.-- Information Request (15) dan Information Reply (16)
Pesan yang dipakai  untuk mendapatkan IP address, pesan ini sudah digantikan oleh ARP
dan RARP.
.--.10 Address Mask Request (17) dan Address Mask Reply (18) 
Pesan ini dipakai  untuk mendapatkan subnetmask dari suatu jaringan.
.--Aplikasi ICMP
Contoh aplikasi yang memakai  protokol ICMP antara lain yaitu  : PING dan
TRACEROUTE.
.-- PING
Ping yaitu  program tersederhana dari aplikasi TCP/IP. Ping mengirimkan IP datagram ke
suatu host dan mengukur waktu round trip dan menerima respon. Ping yaitu  singkat an
dari Packet InterNet Groper.
Ping memakai  pesan ICMP echo dan echo reply. 
Ping dapat juga dipakai  untuk memastikan installasi IP address di suatu host. Langkah-
langkah yang dapat dilakukan yaitu :
 Ping loopback : test terhadap software TCP/IP
 Ping IP alamatku : test perangkat jaringan di host ini 
 Ping alamat IP suatu host lain : test apakah jalur sudah benar
 Ping nama dari suatu host : test apakah sistem DNS sudah berjalan.
.-- TRACEROUTE
Aplikasi traceroute melacak jalur mana saja yang dilalui untuk menuju ke suatu host tujuan. 
Cara kerja traceroute dengan mengirimkan pesan dengan TTL = 1. Dimana jika  sudah
mencapai suatu target jumlah TTL akan menjadi 0, dan ini akan memberi  pesan ke
pengirim dengan pesan time exceeded, sehingga host akan mengirimkan lagi pesan ICMP
dengan nilai TTL diperbesar. Proses ini dilakukan terus hingga mencapai host yang dituju.
5.2 Internet Group Management Protocol (IGMP)
IGMP dipakai  untuk mengecek apakah suatu host dapat bergabung dengan IP Multicast.
Protokol IGMP memberi  fasilitas kepada router untuk melakukan cek kepada host yang
tertarik untuk memakai  sistem multicast.
Spesifikasi IGMP dapat dilihat pada RFC 1112 dengan update pada RFC 2236.
5.3 Address Resolution Protocol (ARP)
Protokol ARP dipakai  untuk merubah protokol pengalamatan pada layer yang lebih atas
(IP Address) menjadi alamat fisik jaringan.
Spesifikasi ARP dapat dilihat di RFC 826.
58
disini   5.68 Cara kerja protokol ARP
Cara kerja protokol ARP :
Host Y melakukan broadcast dengan mengirimkan pesan ARP Request, jika  host yang
dituju berada dalam satu jaringan maka host ini  akan mengirimkan pesat ARP Reply
yang berisikan informasi MAC.
Bila host yang dituju berada dalam jaringan yang berbeda maka yang akan mengirimkan ARP
Reply yaitu  Router yang memisahkan jaringan ini .
5.4 Reverse Address Resolution Protocol (RARP)
Protokol RARP dipakai  untuk merubah protokol pengalatan pada layer yang lebih rendah
(Alamat MAC) menjadi alamat IP.
5.5 Bootstrap Protocol (BOOTP)
Bootstrap Protocol (BOOTP) dapat membuat sebuah client / workstation untuk melakukan
initialisasi (proses booting pada komputer) dengan IP Stack yang minimal sehingga
mendapatkan IP Address, alamat Gateway, dan alamat Name server dari sebuah BOOTP
server.
BOOTP spesifikasi bisa dilihat di RFC 951 – bootstrap protocol.
Proses BOOTP antara lain :
1. Client mendeteksi alamat fisik jaringan pada sistemnya sendiri, biasanya berada di
ROM pada interface.
2. BOOTP celint mengirimkan informasi alamat fisik jaringannya ke server dengan
memakai  protokol UDP pada port 67. 
3. Server menerima pesan dari client dan mencatat informasi alamat fisik client,
lalu  membandingkan dengan data yang ada diserver. jika  data yang dicari
ada maka server akan memberi  IP address kepada client melalui port 68 protokol
UDP.
4. saat  client menerima reply dari server, client akan mencatat record alamat IP
lalu  melakukan proses bootstrap.
--Dynamic Host Configuration Protocol (DHCP)
DHCP memberi  framework untuk disampaikan kepada client yang berisikan informasi
tentang konfigurasi jaringan. DHCP bekerja berdasar  protokol BOOTP, dimana
ditambahkan fungsi untuk mengalokasikan pemakaian  IP address dan konfigurasi jaringan
lainnya.
Spesifikasi DHCP dapat dilihat pada RFC 2131 – Dynamic Host Configuration Protocol, dan
RFC 2132 – DHCP options and BOOTP vendor extension.
DHCP melakukan transaksi dengan melihat pada jenis pesan yang dikirimkan. Pesan-pesan
ini  antara lain :
 DHCPDISCOVER : broadcast oleh client untuk menemukan server
 DHCPOFFER : respon dari server sebab  menerima DHCPDISCOVER dan
menawarkan IP address kepada client
 DHCPREQUEST : pesan dari client untuk mendapatkan informasi jaringan
 DHCPACK : acknowledge dari server
 DHCPNACK : negative acknowledge dari server yang menyatakan waktu sewa dari
client sudah kadaluwarsa
 DHCPDECLINE : pesan dari client yang menyatakan bahwa dia sedang
memakai  informasi dari server
 DHCPRELEASE : pesan dari client bahwa client sudah tidak memakai  lagi
informasi dari server
 DHCPINFORM : pesan dari client bahwa dia sudah memakai  informasi jaringan
secara manual.
--Proses alokasi alamat jaringan 
Bagian ini menjelaskan interaksi antara client dan server, dimana client tidak mengetahui
alamat IP nya. Di asumsikan DHCP server memiliki 1 blok alamat jaringan dimana dapat
dipakai  pada jaringan ini . Setiap server memiliki sebuah database yang berisikan info
IP address dan sewa (leases) pemakaian  jaringan pada suatu tempat penyimpanan yang
permanen.
Berikut keterangan dari interaksi antara DHCP client dan DHCP server :
1. Client melakukan broadcast DHCPDISCOVER pada jaringan lokal. 
2. Server merespon dengan pesan DHCPOFFER, dimana informasi ini juga
memberi  informasi tentang IP address.
3. DHCP client menerima 1 atau lebih pesan DHCPOFFER dari 1 atau lebih DHCP
server. Client memilih salah satu informasi itu dan mengirimkan pesan
DHCPREQUEST dan informasi jaringan mana yang dipilih.
4. Server menerima pesan DHCPREQUEST ini  dan membalas dengan
mengirimkan pesan DHCPACK dengan mengirimkan informasi lengkap.
5. Client menerima DHCPACK dan melakukan konfigurasi terhadap interface
jaringannya.
6. jika  client sudah tidak menginginkan lagi alamat IP ini , client akan
mengirimkan pesan DHCPRELEASE.
--Protokol Routing
Salah satu fungsi dari protokol IP yaitu  membentuk koneksi dari berbagai macam bentuk
interface yang berbeda. Sistem yang melakukan tugas ini  dinamakan  IP router. Tipe dari
perangkat ini terpasang dua atau lebih bentuk interface dan meneruskan datagram antar
jaringan.
saat  mengirim data ke tujuan, suatu host akan melewati sebuah router terlebih dahulu.
lalu  router akan meneruskan data ini  hingga tujuannya. Data ini  mengalir
dari router satu ke router yang lain hingga mencapai host tujuannya. Tiap router melakukan
pemilihan jalan untuk menuju ke hop berikutnya. 
menunjukkan sebuah jaringan dimana host C meneruskan paket data antara
jaringan X dan jaringan Y
Routing table pada tiap perangkat dipakai  untuk meneruskan paket data pada jaringan tiap
segmen. 
Protocol routing memiliki  kemampuan untuk membangun informasi dalam routing table
secara dinamik. jika  terjadi perubahan jaringan routing protokol mampu memperbaharui
informasi routing ini .
--Autonomous System
Definisi dari Autonomous System (AS) yaitu  bagian dari memahami Routing Protocol.
AS yaitu  bagian logical dari Jaringan IP yang besar. AS biasanya dimiliki oleh sebuah
organisasi jaringan. AS di administrasi oleh sebuah managemen resmi. AS dapat
dikoneksikan dengan AS lainnya, baik public maupun private. Beberapa routing protocol dipakai  untuk menentukan jalur pada sistem AS. Yang lainnya
dipakai  untuk interkoneksi pada suatu set autonoumous system, yaitu :
 Interior Gateway Protocol (IGP) : dengan IGP router dapat saling tukar informasi
routing antar AS. Contoh protokol ini antara lain Open Shortest Path First (OSPF)
dan Routing Information Protocol (RIP).
 External Gateway Protocol (EGP) : dengan EGP router dapat saling tukar hasil akhir
(summary) antar AS. Contoh protokol ini antara lain Border Gateway Protocol (BGP)
--Tipe IP Routing dan Algoritma IP Routing
Algoritma routing dipakai  untuk membangun dan mengatur table routing pada perangkat.
Terdapat 2 cara untuk membangun table routing, yaitu :
 Static Routing : routing ini dibangun berdasar  definisi dari adminstrator.
 Dynamic Routing : algoritma ini dapat membuat perangkat router untuk dapat
menentukan jalur routingnya secara otomatis, dengan cara menjelajah jaringan
ini  dan bertukar informari routing antar router. Terdapat 3 kategori tentang
algoritma dinamik, yaitu :
o Distance Vector
o Link State 
o Hybrid 
--Static Routing
Routing static yaitu  entri suatu route yang dilakukan oleh seorang administrator untuk 
mengatur jalur dari sebuah paket data. Entri routing table bisa dilakukan dengan program 
yang terdapat pada perangkat ini .
--Distance Vector Routing
Routing ini memakai  algoritma Bellman-Ford. Dimana tiap router pada jaringan
memiliki informasi jalur mana yang terpendek untuk menghubungi segmen berikutnya.
lalu  antar router akan saling mengirimkan informasi ini , dan akhirnya jalur yang
lebih pendek akan lebih sering dipilih untuk menjadi jalur menuju ke host tujuan.
Protokol yang memakai  algoritma ini yaitu RIP.
--Link State Routing
Routing ini memakai  teknik link state, dimana artinya tiap router akan mengolek
informasi tentang interface, bandwidth, roundtrip dan sebagainya. lalu  antar router
akan saling menukar informasi, nilai yang paling efisien yang akan diambil sebagai jalur dan
di entri ke dalam table routing. Informasi state yang ditukarkan dinamakan  Link State
Advertisement (LSA). 
Dengan memakai  algoritma pengambilan keputusan Shortest Path First (SPF), informasi
LSA ini  akan diatur sedemikian rupa hingga membentu suatu jalur routing. 
Routing protokol yang memakai  algoritma antara lain OSPF.
--Hybrid Routing
Routing yaitu  gabungan dari Distance Vector dan Link State routing. Contoh
pemakaian  algoritma ini yaitu  EIGRP.
-- Routing Information Protocol (RIP)
Routing protokol yang memakai  algoritma distance vector, yaitu algortima Bellman-
Ford. Pertama kali dikenalkan pada tahun 1969 dan yaitu  algoritma routing yang pertama pada ARPANET.
Versi awal dari routing protokol ini dibuat oleh Xerox Parc’s PARC Universal Packet
Internetworking dengan nama Gateway Internet Protocol. lalu  diganti nama menjadi
Router Information Protocol (RIP) yaitu   bagian Xerox network Services.
Versi dari RIP yang mendukung teknologi IP dimasukkan dalam BSD system sebagai routed
daemon.
Spesifikasi RIP dapat dilihat di RFC 1058.
RIP yaitu   routing protokol dengan algoritma distance vector, yang menghitung
jumlah hop (count hop) sebagai routing metric. Jumlah maksimum dari hop yang
diperbolehkan yaitu  15 hop. Tiap RIP router saling tukar informasi routing tiap 30 detik,
melalui UDP port 520. Untuk menghindari loop routing, dipakai  teknik split horizon with
poison reverse. RIP yaitu  routing protocol yang paling mudah untuk di konfigurasi.
RIP memiliki 3 versi yaitu RIPv1, RIPv2, RIPng
 RIPv1 didefinisikan pada RFC 1058, dimana memakai  classful routing, tidak
memakai  subnet. Tidak mendukung Variable Length Subnet Mask (VLSM).
 RIPv2 hadir sekitar tahun 1994, dengan memperbaiki kemampuan akan Classless
Inter-Domain Routing. Didefinisikan pada RFC 2453. RIPng yaitu  protokol RIP untuk IPv6. Didefinisikan pada RFC 2080.
-- Open Shortest Path First (OSPF)
OSPF yaitu  routing protocol berbasis link state, termasuk dalam interior Gateway
Protocol (IGP). memakai  algoritma Dijkstra untuk menghitung shortest path first (SPF).
memakai  cost sebagai routing metric. Sesudah  antar router bertukar informasi maka akan
terbentuk database link state pada masing-masing router.
OSPF mungkin yaitu  IGP yang paling banyak dipakai . memakai  metode MD5
untuk autentikasi antar router sebelum menerima Link-state Advertisement (LSA). Dari awak
OSPF sudah mendukung CIDR dan VLSM, berbeda dengan RIP. Bahkan untuk OSPFv3
sudah mendukung untuk IPv6.
Router dalam broadcast domain yang sama akan melakukan adjacencies untuk mendeteksi
satu sama lainnya. Pendeteksian dilakukan dengan mendengarkan “Hello Packet”. Hal ini
dinamakan  2 way state. Router OSPF mengirimkan “Hello Packet” dengan cara unicast dan
multicast. Alamat multicast 224.0.0.5 dan 224.0.0.6 dipakai  OSPF, sehingga OSPF tidak
memakai  TCP atau UDP melainkan IP protocol 89.
--Enhanced Interior Gateway Routing Protocol (EIGRP)
EIGRP yaitu  routing protocol yang dibuat CISCO. EIGRP termasuk routing protocol
dengan algoritma hybrid. 
EIGRP memakai  beberapa terminologi, yaitu :
 Successor : istilah yang dipakai  untuk jalur yang dipakai  untuk meneruskanpaket data.
 Feasible Successor : istilah yang dipakai  untuk jalur yang akan dipakai  untuk
meneruskan data jika  successor mengalami kerusakan.
 Neighbor table : istilah yang dipakai  untuk tabel yang berisi alamat dan interface
untuk mengakses ke router sebelah
 Topology table : istilah yang dipakai  untuk tabel yang berisi semua tujuan dari
router sekitarnya.
 Reliable transport protocol : EIGRP dapat menjamin urutan pengiriman data.
Perangkat EIGRP bertukar informasi hello packet untuk memastikan daerah sekitar. Pada
bandwidth yang besar router saling bertukar informasi setiap 5 detik, dan 60 detik pada
bandwidth yang lebih rendah.
--Border Gateway Protocol (BGP)
BGP yaitu  router untuk jaringan external. BGP dipakai  untuk menghidari routing loop
pada jaringan internet. 
Standar BGP memakai  RFC 1771 yang berisi tentang BGP versi 4.
--Konsep dan terminologi BGP
 BGP Speaker : Router yang mendukung BGP
 BGP Neighbor (pasangan) : Sepasang router BGP yang saling tukar informasi. Ada 2
jenis tipe tetangga (neighbor) :
o Internal (IBGP) neighbor : pasangan BGP yang memakai  AS yang sama.
o External (EBGP) neighbor : pasangan BGP yang memakai  AS yang berbeda.
 BGP session : sesi dari 2 BGP yang sedang terkoneksi
 Tipe traffik :
o Lokal : trafik lokal ke AS
o Transit : semua trafik yang bukan lokal
 Tipe AS :
o Stub : bagian AS yang terkoneksi hanya 1 koneksi dengan AS.
o Multihomed : bagian ini terkoneksi dengan 2 atau lebih AS, namun  tidak
meneruskan trafik transit.
o Transit : bagian ini terkoneksi dengan 2 atau lebih AS, dan meneruskan paket
lokal dan transit
 Nomer AS : 16 bit nomer yang unik
 AS path : jalur yang dilalui oleh routing dengan nomer AS
 Routing Policy : aturan yang harus dipatuhi tentang bagaimana meneruskan paket.
 Network Layer Reachability Information (NLRI) : dipakai  untuk advertise router.
 Routes dan Path : entri tabel routing
--Operasional BGP
BGP neighbor, peer, melakukan koneksi sesuai dengan konfigurasi manual pada perangkat
router dan membuat jalur TCP dengan port 179. BGP speaker akan mengirimkan 19 byte
pesan keepalive untuk menjaga konektivitas (dilakukan tiap 60 detik).
Pada waktu BGP berjalan pada dalam sistem AS, melakukan pengolahan informasi routing
IBGP hingga mencapai administrative distance 200. saat  BGP berjalan diantara sistem AS,
maka akan melakukan pengolahan informasi routing EBGP hingga mencapai administrative
distance 20. BGP router yang mengolah trafik IBGP dinamakan  transit router. Router yang
berada pada sisi luar dari sistem AS dan memakai  EBGP akan saling tukar informasi
dengan router ISP.
Semakin bertambahnya jaringan akan memicu  jumlah table routing yang semakin
banyak pada router BGP. Untuk mengatasi hal ini  dapat dilakukan : route reflector (RFC
2796) dan Confederation (RFC 3065).
Router reflector akan mengurangi jumlah koneksi yang dibutuhkan AS. Dengan sebuah
router ( atau dua router untuk redundansi) dapat dijadikan sebagai router reflector (duplikasi
router), sehingga router yang lainnya dapat dipakai  sebagai peer.
Confederation dipakai  untuk jaringan AS dengan skala besar, dan dapat membuat jalan
potong sehingga internal routing pada AS akan mudah di manaj. Confederation dapat
dijalankan bersamaan dengan router reflector.
--Proses Routing di sistem UNIX
Selain dengan memakai  mesin Router. Routing protocol juga dapat dijalankan pada
sistem UNIX dengan bantuan beberapa aplikasi antara lain :
 RouteD : mendukung interior routing dengan mengimplementasikan RIP
 GateD : mendukung interior dan eksterior routing dengan mengimplementasikan
OSPF, RIPv2, BGP-4
 Quagga : mendukung interior dan ekterior routing dengan mengimplementasikan
OSPFv3, RIPv1, RIPv2, RIPng, BGP4
--Transport Layer
 fungsi dari 2 protokol penting pada layer transport, yaitu:
 User Datagram Protocol (UDP)
 Transmission Control Protocol (TCP)
--Port dan Socket
--Port
Port dipakai  untuk melakukan proses komunikasi dengan proses lain pada jaringan
TCP/IP. Port memakai  nomer 16 bit, dipakai  untuk komunikasi host-to-host. Tipe port
ada 2 macam yaitu :
 Well-known : port yang sudah dimiliki oleh server. Contoh : telnet memakai  port
23. Well-known port memiliki range dari 1 hingga 1023. Port Well-known diatur oleh
Internet Assigned Number Authority (IANA) dan dapat dipakai  oleh proses sistem
dengan user tertentu yang mendapatkan akses.
 Ephemeral : client tidak memakai  port well-known sebab  untuk berkomunikasi
dengan server, mereka sudah melakukan perjanjian terlebih dahulu untuk
memakai  port mana. Ephemeral port memiliki range dari 1023 hingga 65535. 
Untuk 1 nomer port tidak bisa dipakai  oleh 2 aplikasi yang berbeda dalam waktu yang
bersamaan. 
--Socket
Interface socket yaitu  bagian dari Application Programming Interface (API) yang
dipakai  untuk protokol komunikasi. 
Terminologi yang dipakai  :
 Socket yaitu  tipe spesial dari file handle, dimana dipakai  oleh sistem operasi
untuk mengakses jaringan.
 Alamat soket yaitu  : <protocol, local address, local process> contoh : <tcp,
193.44.234.3, 12345>
 Pembicaraan (conversation) : link komunikasi antar 2 proses
 Asosiasi (Association)  : kejadian komunikasi antar 2 proses <protocol, local-address,
local-process, foreign-address, foreign-process>
o Contoh : <tcp, 193.44.234.4, 1500, 193.44.234.5, 21>
 Setengah Asosiasi (half-association) : < protocol, local-address, local-process> atau
<protocol, foreign-address, foreign-process>
 Half-association dinamakan  juga transport address.
-- User Datagram Protocol (UDP)
UDP yaitu  standar protokol dengan STD nomer 6. Spesifikasi UDP dapat dilihat pada
RFC 768 – User Datagram Protocol. 
UDP pada dasarnya yaitu  interface untuk aplikasi IP. Dimana UDP tidak memiliki fungis
reliabilitas data, flow control, dan error-recovery untuk komunikasi IP. UDP memiliki proses
seperti multiplexing/demultiplexing untuk mengirimkan datagram, dari port menuju IP
datagram. sebab  itu UDP juga dinamakan  sebagai connectionless-oriented protocol.
Proses Demultiplexing berbasis port pada UDP
-- Format Datagram UDP
UDP datagram memiliki 16 byte seperti pada disini  
Dimana :
 Source Port : port yang dipakai  untuk mengirimkan data.
 Destination Port : port yang dipakai  untuk tujuan data.
 Length : panjang data paket keseluruhan
 Checksum : 16 bit komplemen-1 dari pseudo-ip-header yaitu   error check 
dari paket data
--Aplikasi yang memakai  UDP
Aplikasi yang menggunkan protokol UDP antara lain :
 Trivial File Transfer Protocol (TFTP)
 Domain Name System (DNS) name server
 Remote Procedure Call (RPC) pada Network File System (NFS)
 Simple Network Management Protocol (SNMP)
 Lighweight Directory Access Protocol (LDAP)
--Transmission Control Protocol (TCP)
TCP yaitu  standar protokol dengan STD nomer 7. Spesifikasi TCP dapat dilihat pada
RFC 793 – Transmission Control Protocol. 
TCP memberi  fasilitas untuk aplikasi dibandingkan UDP, sebab  TCP memberi  error
recovery, flow control, dan reliabilitas. TCP dinamakan juga sebagai protokol berbasis
connection-oriented.
2 Proses komunikasi memakai  koneksi TCP dinamakan  InterProcess Communication (IPC).
IPC. 
 -- Format Segmen TCP
Format TCP 
Dimana :
 Source Port : 16 bit nomer port. dipakai  untuk menerima reply
 Destination port : 16 bit nomer port tujuan
 Sequence Number : nomwer awal data pada segmen 
 Acknowledge number : jika  ACK diset maka ini menjadi nomer urut data yang 
akan diterima
 Data offset : nomer dimana bagian data mulai
 Reserved : untuk kegunaan masa depan, diset 0
 URG : mengaktifkan titik yang darurat pada suatu segmen
 ACK : kolom acknowledge
 PSH : fungsi push
 RST : mereset suatu koneksi
 SYN : untuk mensinkronisasi nomer urutan 
 FIN : batas akhir data
 Window : nomer window untuk proses windowing
 Checksum : nomer yang dipakai  untuk mengecek validitas pengirim dan penerima
 Urgent Pointer : menunjuk pada titik yang darurat pada suatu segmen
 Options : digunakna untuk pilihan lain pada datagram
 Padding : dipakai  untuk membulatkan data pada bagian options
-- Interface Pemrograman pada aplikasi TCP
Fungsi yang dipakai  pada komunikasi TCP antara lain :
 Open : membuka koneksi dengan memasukkan beberapa parameter antara lain :
o Actif / Pasif
o Informasi soket tujuan 
o Nomer port lokal  
o Nilai timeout
 Send : mengirimkan buffer data ke tujuan
 Receive : Menerima dan mengcopy data kepada buffer milik pemakai 
 Close : menutup koneksi
 Status : melihat informasi
 Abort : membatalkan semua kegiatan send atau receive
--Aplikasi yang memakai  TCP
Hampir keseluruhan aplikasi jaringan memakai  TCP, standar aplikasi yang
memakai  TCP antara lain :
 Telnet
 File Transfer Protocol (FTP)
 Simple Mail Transfer Protocol (SMTP)
 Hyper-Text Transfer Protocol (HTTP)
--Struktur dan Pemrograman untuk Layer Aplikasi
Layer tertinggi yaitu  layer aplikasi. Layer ini saling berkomunikasi antar host dan
yaitu  interface yang tampak oleh user pada protokol TCP/IP
--sifat  dari Aplikasi
Pada layer aplikasi terdapat beberapa karakterisik yang sama yaitu :
 yaitu  aplikasi yang ditulis oleh user (user-written) atau aplikasi sudah
yaitu  standar dengan didalamnya sudah terdapat produk TCP/IP. Aplikasi
TCP/IP set yang terdapat antara lain :
o TELNET, dipakai  untuk mengakses remote host melalui terminal yang
interaktif
o FTP (File Transfer Protocol) dipakai  untuk transfer file antar disk
o SMTP (Simple Mail Transfer Protocol) dipakai  sebagai sistem surat di
internet
 memakai  sistem transpor UDP atau TCP
 memakai  model client-server
--Pemrograman dengan Socket API 
Application Programming Interface (API) dapat dipakai  oleh user untuk dapat membuat
suatu aplikasi. Sedangkan untuk fasilitas jaringannya dapat memakai  API bagian
SOCKET. Dalam bagian ini akan dijelaskan contoh API yang dipakai  untuk jaringan.
Pada bab ini dijelaskan bagaimana memakai  bahasa pemrograman C untuk kepentingan
jaringan pada mesin linux.
Contoh kompilasi dan menjalankan program :
# gcc –o program source.c
# ./program
--Struktur dan Penanganan Data 
Sebelum memakai  pemrograman socket diperlukan suatu variable struktur untuk
menyimpan informasi tentang jaringan. Struktur yang diperlukan antara lain :
 sockaddr
 sockaddr_in
Contoh pemakaian nya yaitu :
struct sockaddr {
unsigned short sa_family; // address family, AF_xxx
char sa_data[14]; // 14 bytes of protocol address
};
Dimana, sa_family dipakai  untuk penentuan jenis family yang dipakai  pada bab ini
memakai  AF_INET artinya memakai  family INTERNETWORKING. Sedangkan
untuk sa_data dipakai  untuk informasi tujuan dan port yang dipakai .
Untuk memakai  struktur ini  diperlukan 1 lagi struktur yaitu sockadd_in dimana arti
“in” yaitu  internet
struct sockaddr_in {
short int sin_family; // Address family
unsigned short int sin_port; // Port number
struct in_addr sin_addr; // Internet address
unsigned char sin_zero[8]; // Same size as struct sockaddr
};
Dengan struktur ini maka programmer akan dengan mudah mengontrol data. Pada bagian
sin_zero dipakai  sebagai pelengkap dimana harus diset dengan nilai 0, hal ini 
dapat dipakai  fungsi memset().
Untuk memakai  alamat IP perlu juga sebuah variabel struktur yaitu struktur  in_addr,
dimana struktur in_addr yaitu  antaralain  :
// Internet address (a structure for historical reasons)
struct in_addr {
unsigned long s_addr; // that’s a 32-bit long, or 4 bytes
};
Sehingga untuk pemakai nya dapat dilakukan dengan cara, membuat sebuah variable contoh
ina dan bertipe struct sockaddr_in maka ina.sin_addr.s_addr dapat dipakai  sebagai objek
untuk alamat IP.  
--Perubahan variable
Perubahan awal yang dapat dipakai  yaitu  perubahan dari short (2 byte) menjadi long (4
byte). lalu  perubahan lainnya yaitu  perubahan dari host menjadi network. Sehingga
masing-masing perubahan bisa disingkat menjadi 1 huruf yaitu , s, l, n, dan h.
Fungsi yang dapat dipakai  untuk perubahan ini  antara lain :
 htons() : perubahan host ke network dengan sistem short
 htonl() : perubahan host ke network dengan sistem long
 ntohs() : perubahan network ke host dengan sistem short
 ntohl() : perubahan network ke host dengan sistem long
8.2.--Penanganan alamat IP
Ada beberapa cara untuk memasukkan alamat IP kedalam suatu variable pada pemrograman
socket.
jika  kita sudah memiliki variable struct sockadd_in ina, dan kita memiliki alamat IP
“10.25--02.23”. Maka dengan fungsi inet_addr(), akan dapat merubah alamat IP menjadi
unsigned long. Contoh pemakaian  :
ina.sin_addr.s_addr = inet_addr(“10.25--02.23”);
selain itu ada cara yang lainnya, yaitu dengan memakai  inet_aton :
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
int inet_aton(const char *cp, struct in_addr *inp);
Dan contoh pemakaian nya yaitu  antaralain  :
struct sockaddr_in my_addr;
my_addr.sin_family = AF_INET; // host byte order
my_addr.sin_port = htons(MYPORT); // short, network byte order
inet_aton("10.25--02.53", &(my_addr.sin_addr));
memset(&(my_addr.sin_zero), ’\0’, 8); // zero the rest of the struct
Sehingga jika  kita ingin menampilkan isi variabel ini  dapat dilakukan dengan fungsi
tambahan inet_ntoa (network to ascii).
printf("%s", inet_ntoa(ina.sin_addr));
Contoh lengkapnya :
char *a1, *a2;
.
.
a1 = inet_ntoa(ina1.sin_addr); // this is 19--68.4.14
a2 = inet_ntoa(ina2.sin_addr); // this is 10.1--10.57
printf("address 1: %s\n",a1);
printf("address 2: %s\n",a2);
akan menghasilkan
address 1: 10.1--10.57
address 2: 10.1--10.57
-- System Call
System call yaitu  fungsi-fungsi dalam pemrograman. Fungsi-fungsi ini  dipakai 
untuk menjalankan dan mengakses jaringan.
-- socket() 
pemakaian  :
#include <sys/types.h>
#include <sys/socket.h>
int socket(int domain, int type, int protocol);
Fungsi ini dipakai  untuk inisialisasi dalam pemakaian  socket. Dimana domain berisikan
AF_INET, sedangkat type berisikan SOCK_STREAM atau SOCK_DGRAM dan protocol
berisikan angka 0.
SOCK_STREAM dipakai  jika  memakai  protokol TCP dan SOCK_DGRAM
dipakai  untuk protokol UDP.
Selain isi diatas, masih banyak lagi lainnya dan bisa dilihat pada manual page.
-- bind()
pemakaian  :
#include <sys/types.h>
#include <sys/socket.h>
int bind(int sockfd, struct sockaddr *my_addr, int addrlen);
fungsi bind dipakai  untuk melakukan asosiasi terhadap alamat IP dan port. Variabel sockfd
didapat dari fungsi socket().
Contoh :
#include <string.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#define MYPORT 3490
main()
{
int sockfd;
struct sockaddr_in my_addr;
sockfd = socket(AF_INET, SOCK_STREAM, 0); // do some error checking!
my_addr.sin_family = AF_INET; // host byte order
my_addr.sin_port = htons(MYPORT); // short, network byte order
my_addr.sin_addr.s_addr = inet_addr("10.1--10.57");
memset(&(my_addr.sin_zero), ’\0’, 8); // zero the rest of the struct
// don’t forget your error checking for bind():
bind(sockfd, (struct sockaddr *)&my_addr, sizeof(struct sockaddr));
.
.
.
jika  ingin memakai  alamat IP mesin kita, dapat dipakai  :
my_addr.sin_port = 0; // choose an unused port at random
my_addr.sin_addr.s_addr = INADDR_ANY; // use my IP address
-- connect()
pemakaian  :
#include <sys/types.h>
#include <sys/socket.h>
int connect(int sockfd, struct sockaddr *serv_addr, int addrlen);
fungsi connect dipakai  untuk mengakses suatu remote host.
Contoh :
#include <string.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
75
#define DEST_IP "10.1--10.57"
#define DEST_PORT 23
main()
{
int sockfd;
struct sockaddr_in dest_addr; // will hold the destination addr
sockfd = socket(AF_INET, SOCK_STREAM, 0); // do some error checking!
dest_addr.sin_family = AF_INET; // host byte order
dest_addr.sin_port = htons(DEST_PORT); // short, network byte order
dest_addr.sin_addr.s_addr = inet_addr(DEST_IP);
memset(&(dest_addr.sin_zero), ’\0’, 8); // zero the rest of the struct
// don’t forget to error check the connect()!
connect(sockfd, (struct sockaddr *)&dest_addr, sizeof(struct sockaddr));
--listen()
pemakaian  :
int listen(int sockfd, int backlog);
Fungsi dari perintah listen dipakai  untuk menunggu koneksi dari suatu host.
-- accept()
pemakaian  :
#include <sys/socket.h>
int accept(int sockfd, void *addr, int *addrlen);
Fungsi dari accept dipakai  sesudah  fungsi listen. Dimana socket akan meneruskan ke
variable socket yang baru sesudah  suatu host menghubungi. Accept akan membentuk socket
baru dan bisa diproses untuk send atau recv.
Contoh :
#include <string.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#define MYPORT 3490 // the port users will be connecting to
#define BACKLOG 10 // how many pending connections queue will hold
main( {
int sockfd, new_fd; // listen on sock_fd, new connection on new_fd
struct sockaddr_in my_addr; // my address information
struct sockaddr_in their_addr; // connector’s address information
int sin_size;
sockfd = socket(AF_INET, SOCK_STREAM, 0); // do some error checking!
my_addr.sin_family = AF_INET; // host byte order
my_addr.sin_port = htons(MYPORT); // short, network byte order
my_addr.sin_addr.s_addr = INADDR_ANY; // auto-fill with my IP
memset(&(my_addr.sin_zero), ’\0’, 8); // zero the rest of the struct
// don’t forget your error checking for these calls:
bind(sockfd, (struct sockaddr *)&my_addr, sizeof(struct sockaddr));
listen(sockfd, BACKLOG);
sin_size = sizeof(struct sockaddr_in);
new_fd = accept(sockfd, (struct sockaddr *)&their_addr, &sin_size);
--  send() dan recv()
pemakaian  :
int send(int sockfd, const void *msg, int len, int flags);
int recv(int sockfd, void *buf, int len, unsigned int flags);
Funsi dari send dan recv yaitu  untuk pertukaran data. Fungsi send() dan recv() dipakai 
untuk data dengan protokol yang berbasis connection-oriented, sedangkan untuk protokol
yang berbasis connectionless-oriented memakai  sendto() dan recvfrom().
Pointer *msg yaitu  isi dari data yang akan dikirim, begitu juga dengan *buf yaitu 
pointer yang berisi data yang diterima. Variabel len dipakai  sebagai panjang data ini .
Contoh :
char *msg = "Beej was here!";
int len, bytes_sent;
.
.
len = strlen(msg);
bytes_sent = send(sockfd, msg, len, 0);
--sendto() dan recvfrom()
pemakaian  :
int sendto(int sockfd, const void *msg, int len, unsigned int flags, const struct 
sockaddr *to, int tolen);
int recvfrom(int sockfd, void *buf, int len, unsigned int flags, struct sockaddr 
*from, int *fromlen);
Fungsi dari sendto dan recvfrom yaitu  untuk pertukaran data dengan protokol DGRAM.
Fungsi ini  hampir sama dengan fungsi send dan recv dimana terdapat variabel tambahan
yaitu  struct sockaddr *to, dan int toleni. 
-- close() dan shutdown()
pemakaian  :
close(sockfd);
int shutdown(int sockfd, int how);
Fungsi close() d a n shutdown() dipakai  untuk menutup koneksi sesudah  melakukan
pertukaran data. Shutdown dipakai  jika  diinginkan suatu kondisi tertentu, variabel
ini  ditambahkan pada variable how. Varibel ini  mpemilik  nilai dan arti tertentu
yaitu :
 0 – Sesudah  ditutup, hanya diperbolehkan menerima
 1 – Sesudah  ditutup, hanya diperbolehkan mengirim
 2 – Seteleh ditutup, menerima dan mengirim tidak diperbolehkan (sama dengan
close() )
--getpeername()
pemakaian  :
#include <sys/socket.h>
int getpeername(int sockfd, struct sockaddr *addr, int *addrlen);
Fungsi getpeername() dipakai  untuk mengetahui informasi tentang tujuan.
.--0 gethostname()
pemakaian  :
#include <unistd.h>
int gethostname(char *hostname, size_t size);
Fungsi gethostname() dipakai  untuk mengetahui informasi tentang mesin jaringan kita.
--1 DNS – Mengirim ke “whitehouse.gov”, Dijawab “198.137.240.92”
pemakaian  :
#include <netdb.h>
struct hostent *gethostbyname(const char *name);
Struktur hostent memiliki objek didalam antara lain :
struct hostent {
char *h_name;
char **h_aliases;
int h_addrtype;
int h_length;
char **h_addr_list;
};
#define h_addr h_addr_list[0]
Dimana :
 h_name – nama resmi dari suatu host
 h_aliases – NULL , nama alternatif dari suatu host
 h_addrtype – type dari alamat, contoh AF_INET
 h_length – panjang dari data alamat IP
 h_addr_list – ZERO, sekumpulan IP dengan nama ini 
 h_addr – alamat pertama dari h_addr_list
Untuk mendapatkan hasil dari struktur hostent dipakai  fungsi gethostbyname(). Cara
pemakaian  dapat dilihat pada contoh program.
Contoh program :
/*
** getip.c - a hostname lookup demo
*/
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
#include <netdb.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
int main(int argc, char *argv[])
{
struct hostent *h;
if (argc != 2) { // error check the command line
fprintf(stderr,"usage: getip address\n");
exit(1);
}
if ((h=gethostbyname(argv[1])) == NULL) { // get the host info
herror("gethostbyname");
exit(1);
}
printf("Host name : %s\n", h->h_name);
printf("IP Address : %s\n", inet_ntoa(*((struct in_addr *)h->h_addr)));
return 0;
}
-- Skenario pemakaian  pemrograman socket
Pemrograman socket memakai  sistem client-server, dimana proses client berbicara
dengan proses server dan sebaliknya. Contoh, client dengan aplikasi telnet akan
menghubungi server yang menjalankan aplikasi telnetd.
--Contoh Server Berbasis STREAM
/*
** server.c - a stream socket server demo
*/
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <errno.h>
#include <string.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <sys/wait.h>
#include <signal.h>
#define MYPORT 3490 // the port users will be connecting to
#define BACKLOG 10 // how many pending connections queue will hold
void sigchld_handler(int s)
{
while(wait(NULL) > 0);
}
int main(void)
{
int sockfd, new_fd; // listen on sock_fd, new connection on new_fd
struct sockaddr_in my_addr; // my address information
struct sockaddr_in their_addr; // connector’s address information
int sin_size;
struct sigaction sa;
int yes=1;
if ((sockfd = socket(AF_INET, SOCK_STREAM, 0)) == -1) {
perror("socket");
exit(1);
}
if (setsockopt(sockfd,SOL_SOCKET,SO_REUSEADDR,&yes,sizeof(int)) == -1) {
perror("setsockopt");
exit(1);
}
my_addr.sin_family = AF_INET; // host byte order
my_addr.sin_port = htons(MYPORT); // short, network byte order
my_addr.sin_addr.s_addr = INADDR_ANY; // automatically fill with my IP
memset(&(my_addr.sin_zero), ’\0’, 8); // zero the rest of the struct
if (bind(sockfd, (struct sockaddr *)&my_addr, sizeof(struct sockaddr))== -1) 
{
perror("bind");
exit(1);
}
if (listen(sockfd, BACKLOG) == -1) {
perror("listen");
exit(1);
}
sa.sa_handler = sigchld_handler; // reap all dead processes
sigemptyset(&sa.sa_mask);
sa.sa_flags = SA_RESTART;
if (sigaction(SIGCHLD, &sa, NULL) == -1) {
perror("sigaction");
exit(1);
}
while(1) { // main accept() loop
sin_size = sizeof(struct sockaddr_in);
if ((new_fd = accept(sockfd, (struct sockaddr *)&their_addr, 
&sin_size)) == -1) {
perror("accept");
continue;
}
printf("server: got connection from %s\n",
inet_ntoa(their_addr.sin_addr));
if (!fork()) { // this is the child process
close(sockfd); // child doesn’t need the listener
if (send(new_fd, "Hello, world!\n", 14, 0) == -1)
perror("send");
close(new_fd);
exit(0);
}
close(new_fd); // parent doesn’t need this
}
return 0;
}
Untuk mencoba program server ini  jalankan:
# telnet server 3490
--Contoh Client Berbasis STREAM
/*
** client.c - a stream socket client demo
*/
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <errno.h>
#include <string.h>
#include <netdb.h>
#include <sys/types.h>
#include <netinet/in.h>
#include <sys/socket.h>
#define PORT 3490 // the port client will be connecting to
#define MAXDATASIZE 100 // max number of bytes we can get at once
int main(int argc, char *argv[])
{
int sockfd, numbytes;
char buf[MAXDATASIZE];
struct hostent *he;
struct sockaddr_in their_addr; // connector’s address information
if (argc != 2) {
fprintf(stderr,"usage: client hostname\n");
exit(1);
}
if ((he=gethostbyname(argv[1])) == NULL) { // get the host info
perror("gethostbyname");
exit(1);
}
if ((sockfd = socket(AF_INET, SOCK_STREAM, 0)) == -1) {
perror("socket");
exit(1);
}
their_addr.sin_family = AF_INET; // host byte order
their_addr.sin_port = htons(PORT); // short, network byte order
their_addr.sin_addr = *((struct in_addr *)he->h_addr);
memset(&(their_addr.sin_zero), ’\0’, 8); // zero the rest of the struct
if (connect(sockfd, (struct sockaddr *)&their_addr,sizeof(struct sockaddr)) 
== -1) {
perror("connect");
exit(1);
}
if ((numbytes=recv(sockfd, buf, MAXDATASIZE-1, 0)) == -1) {
perror("recv");
exit(1);
}
buf[numbytes] = ’\0’;
printf("Received: %s",buf);
close(sockfd);
return 0;
}
Program ini mencari server dengan port 3490 dan menerima string dari server dan 
menampilkan ke layar.
--Socket dengan DATAGRAM
Program listener akan bersiap pada sebuah mesin dan akan menunggu paket yang menuju ke
port 4950. Program talker akan mengirim paket menuju ke port ini .
Listing program listernet :
/*
** listener.c - a datagram sockets "server" demo
*/
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <errno.h>
#include <string.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#define MYPORT 4950 // the port users will be connecting to
#define MAXBUFLEN 100
int main(void)
{
int sockfd;
struct sockaddr_in my_addr; // my address information
struct sockaddr_in their_addr; // connector’s address information
int addr_len, numbytes;
char buf[MAXBUFLEN];
if ((sockfd = socket(AF_INET, SOCK_DGRAM, 0)) == -1) {
perror("socket");
exit(1);
}
my_addr.sin_family = AF_INET; // host byte order
my_addr.sin_port = htons(MYPORT); // short, network byte order
my_addr.sin_addr.s_addr = INADDR_ANY; // automatically fill with my IP
memset(&(my_addr.sin_zero), ’\0’, 8); // zero the rest of the struct
if (bind(sockfd, (struct sockaddr *)&my_addr,sizeof(struct sockaddr)) == -1) 
{
perror("bind");
exit(1);
}
addr_len = sizeof(struct sockaddr);
if ((numbytes=recvfrom(sockfd,buf, MAXBUFLEN-1, 0,(struct sockaddr 
*)&their_addr, &addr_len)) == -1) {
perror("recvfrom");
exit(1);
}
printf("got packet from %s\n",inet_ntoa(their_addr.sin_addr));
printf("packet is %d bytes long\n",numbytes);
buf[numbytes] = ’\0’;
printf("packet contains \"%s\"\n",buf);
close(sockfd);
return 0;
}Listing program talker:
/*
** talker.c - a datagram "client" demo
*/
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <errno.h>
#include <string.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <netdb.h>
#define MYPORT 4950 // the port users will be connecting to
int main(int argc, char *argv[])
{
int sockfd;
struct sockaddr_in their_addr; // connector’s address information
struct hostent *he;
int numbytes;
if (argc != 3) {
fprintf(stderr,"usage: talker hostname message\n");
exit(1);
}
if ((he=gethostbyname(argv[1])) == NULL) { // get the host info
perror("gethostbyname");
exit(1);
}
if ((sockfd = socket(AF_INET, SOCK_DGRAM, 0)) == -1) {
perror("socket");
exit(1);
}
their_addr.sin_family = AF_INET; // host byte order
their_addr.sin_port = htons(MYPORT); // short, network byte order
their_addr.sin_addr = *((struct in_addr *)he->h_addr);
memset(&(their_addr.sin_zero), ’\0’, 8); // zero the rest of the struct
if ((numbytes=sendto(sockfd, argv[2], strlen(argv[2]), 0,(struct sockaddr 
*)&their_addr, sizeof(struct sockaddr))) == -1) {
perror("sendto");
exit(1);
}
printf("sent %d bytes to %s\n", numbytes,
inet_ntoa(their_addr.sin_addr));
close(sockfd);
return 0;
}
--Socket lanjutan
Pada bagian ini dijelaskan tentang pemakaian  beberapa fungsi yang dapat mendukung kerja
dari program jaringan memakai  pemrograman socket.
-- Blocking
Suatu aplikasi server dapat menerima paket data secara bersamaan, untuk itu perlu dilakukan
pelepasan suatu pembatas atau yang dinamakan  non-blocking. Sehingga server bisa menerima
data secara bersamaan. 
Pada initialisasi socket(), socket secara awal memiliki nilai awal blocking. Untuk membuat
mejadi bersifat non-blocking dilakukan dengan cara memanggil fungsi fcntl(). Hal ini dapat
dilihat pada contoh berikut :
#include <unistd.h>
#include <fcntl.h>
.
.
sockfd = socket(AF_INET, SOCK_STREAM, 0);
fcntl(sockfd, F_SETFL, O_NONBLOCK);
.
.
--select() – Synchronous I/O Multiplexing
Dengan fungsi select, aplikasi akan dapat memilah dan memroses data pada waktu yang
bersamaan. Contoh pemakaian  select() 
#include <sys/time.h>
#include <sys/types.h>
#include <unistd.h>
int select(int numfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct 
timeval *timeout);
Untuk memperjelas berikut yaitu  contoh program dimana akan menunggu dalam 2.5 detik
apakah ada data yang masuk dari inputan keyboard.
/*
** select.c - a select() demo
*/
#include <stdio.h>
#include <sys/time.h>
#include <sys/types.h>
#include <unistd.h>
#define STDIN 0 // file descriptor for standard input
int main(void)
{
struct timeval tv;
fd_set readfds;
tv.tv_sec = 2;
tv.tv_usec = 500000;
FD_ZERO(&readfds);
FD_SET(STDIN, &readfds);
// don’t care about writefds and exceptfds:
select(STDIN+1, &readfds, NULL, NULL, &tv);
if (FD_ISSET(STDIN, &readfds))
printf("A key was pressed!\n");
else
printf("Timed out.\n");
return 0;
}
Contoh pemakaian  select() pada alikasi multiperson chat server 
/*
** selectserver.c - a cheezy multiperson chat server
*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
85
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#define PORT 9034 // port we’re listening on
int main(void)
{
  fd_set master; // master file descriptor list
  fd_set read_fds; // temp file descriptor list for select()
  struct sockaddr_in myaddr; // server address
  struct sockaddr_in remoteaddr; // client address
  int fdmax; // maximum file descriptor number
  int listener; // listening socket descriptor
  int newfd; // newly accept()ed socket descriptor
  char buf[256]; // buffer for client data
  int nbytes;
  int yes=1; // for setsockopt() SO_REUSEADDR, below
  int addrlen;
  int i, j;
  FD_ZERO(&master); // clear the master and temp sets
  FD_ZERO(&read_fds);
  // get the listener
  if ((listener = socket(AF_INET, SOCK_STREAM, 0)) == -1) {
    perror("socket");
    exit(1);
  }
  // lose the pesky "address already in use" error message
  if (setsockopt(listener, SOL_SOCKET, SO_REUSEADDR, &yes, sizeof(int)) == -1) {
    perror("setsockopt");
    exit(1);
  }
  // bind
  myaddr.sin_family = AF_INET;
  myaddr.sin_addr.s_addr = INADDR_ANY;
  myaddr.sin_port = htons(PORT);
  memset(&(myaddr.sin_zero), ’\0’, 8);
  if (bind(listener, (struct sockaddr *)&myaddr, sizeof(myaddr)) == -1) {
    perror("bind");
    exit(1);
  }
  // listen
  if (listen(listener, 10) == -1) {
    perror("listen");
    exit(1);
  }
  // add the listener to the master set
  FD_SET(listener, &master);
  // keep track of the biggest file descriptor
  fdmax = listener; // so far, it’s this one
  // main loop
  for(;;) {
    read_fds = master; // copy it
      if (select(fdmax+1, &read_fds, NULL, NULL, NULL) == -1) {
        perror("select");
        exit(1);
      }
      // run through the existing connections looking for data to read
      for(i = 0; i <= fdmax; i++) {
        if (FD_ISSET(i, &read_fds)) { // we got one!!
          if (i == listener) {
            // handle new connections
            addrlen = sizeof(remoteaddr);
            if ((newfd = accept(listener, (struct sockaddr *)&remoteaddr, &addrlen))
== -1) {
86
              perror("accept");
            } else {
              FD_SET(newfd, &master); // add to master set
              if (newfd > fdmax) { // keep track of the maximum
                fdmax = newfd;
              }
              
              printf("selectserver: new connection from %s on socket %d\n", 
inet_ntoa(remoteaddr.sin_addr), newfd);
            }
          } else {
            // handle data from a client
             if ((nbytes = recv(i, buf, sizeof(buf), 0)) <= 0) {
               // got error or connection closed by client
               if (nbytes == 0) {
                 // connection closed
                 printf("selectserver: socket %d hung up\n", i);
               } else {
                 perror("recv");
               }
               close(i); // bye!
               FD_CLR(i, &master); // remove from master set
             } else {
               // we got some data from a client
               for(j = 0; j <= fdmax; j++) {
                 // send to everyone!
                 if (FD_ISSET(j, &master)) {
                   // except the listener and ourselves
                   if (j != listener && j != i) {
                     if (send(j, buf, nbytes, 0) == -1) {
                       perror("send");
                     }
                   }
                 }
               }
             }
           } // it’s SO UGLY!
         }
       }
     }
     
     return 0;
}
--Remote Procedure Call (RPC)
RPC yaitu  suatu protokol yang memperbolehkan suatu program komputer yang
memberi  suatu subroutin kepada komputer yang lain untuk menjalankan suatu perintah
tanpa melalui programmner membuat program terlebih dahulu. 
--Protokol Penamaan dan Direktori
Protokol TCP/IP memiliki banyak jenis aplikasi, namun  semuanya itu yaitu  bentuk dari
utilitas jaringan. Semuanya itu menjadi penting dalam suatu perusahaan untuk memakai 
jaringan. Jaringan ada untuk diakses dan melayani pemakai , baik dari dalam maupun dari
luar. Dibutuhkan server untuk melayani aplikasi, data dan sumber lainnya. Server ini 
dimungkinkan dapat berjalan di aneka macam perangkat keras, dari berbagai macam vendor
dan juga berbagai macam jenis sistem operasi. Pada bab ini akan dijelaskan metode untuk
pengaksesan suatu sumber dan aplikasi pada jaringan terdistribusi.
--Domain Name System (DNS)
DNS dijelaskan pada standar protocol dengan no STD 13. Dan dijelaskan pada RFC 1034,
dan RFC 1035. 
Pada awal internet, seorang pemakai  hanya bisa mengakses internet dengan memakai 
alamat IP. Sehingga pemakai  harus dapat menghafalkan berbagai macam alamat IP seperti
layaknya menghafalkan no telp. Contoh untuk mengakses suatu server, pemakai  harus tahu
alamat IP dari server ini , dengan cara TELNET 20--54.187.5. lalu 
dikembangkan suatu sistem penamaan sehingga pemakai  cukup mengakses internet dengan
sebuah nama unik, contoh TELNET www. Dimana IP 54.187.5 dipetakan dengan nama
www.
sebab  perkembangan internet sangat cepat, maka dikembangkan sistem Domain Name
System (DNS). Dimana cukup dengan sebuah host yang melakukan pemetaan suatu nama
terhadap IP, sehingga host lain cukup mengakses host ini  dan menanyakan suatu nama
dan dibalaskan alamat IP kepada host penanya. Sehingga host penanya tidak perlu memiliki
database pemetaan ini .
.-- Hirarki Penamaan
Penamaan suatu domain dibentuk dalam suatu bentuk pohon hirarki. Dimana hal ini
mempermudah untuk pengontrolan suatu nama domain. Contoh : 
small.itso.raleigh.ibm.com
Small yaitu  nama dari host, itso.raleigh.ibm.com yaitu  nama domain dengan
level terendah, dan yaitu  subdomain dari raleigh.ibm.com, dan juga yaitu 
subdomain dari ibm.com, dan juga yaitu  subdomain dari domain com yang juga
yaitu  top-level domain. 
.--Fully Qualified Domain Names (FQDN)
saat  memakai  DNS, pemakai  dapat mengakses suatu site hanya dengan bagian kecil
dari suatu domain. Semisal untuk mengakses website resmi kampus dari jaringan LAN
kampus, pemakai  cukup mengetikkan www. Padahal nama lengkap dari server ini 
yaitu  www.eepis-its.edu. Nama www.eepis-its.edu yaitu  FQDN.
-- Domain generik
Tiga karakter dari top-level domain dinamakan  juga domain generik atau domain organisasional.
Tabel  menunjukkan contoh dari Top-Level Domain.
Tabel  Top-Level Domain
Nama Domain Arti
com Organisasi komersial (company)
edu Institusi edukasi atau pendidikan
gov Institusi pemerintahan
int Organisasi internasional
mil Militer AS
net Pusat layanan jaringan
org Organisasi non-profit
Kode-negara 2 digit kode negara
Disebab kan internet berawal di Amerika Serikat, kebanyakan top-level domain yaitu 
milik dari badan di AS. Namun pada saat ini hanya gov dan mil yang dikhususkan dipakai 
di AS. 
--Domain Negara
Tiap negara memiliki domain sendiri dengan memakai  2 karakter huruf yaitu  
singkatan dari nama negaranya. Karakter yang dipakai  sesuai dengan ISO 3166. Contoh:
Indonesia memakai  domain .id.
--Pemetaan Nama Domain ke Alamat IP
Yang mengontrol pemetaan nama yaitu  nameserver. Nameserver yaitu  sebuah program
server dimana memegang master atau duplikat dari database pemetaan nama ke alamat IP.
Fungsi nameserver yaitu  menjawab permintaan dari program client tentang suatu nama
domain. Nama program client dinamakan  name resolver.
--Pemetaan Alamat IP ke Nama Domain – pointer query
Untuk pemetaan alamat IP ke nama domain tidak berbentuk hirarki melainkan dalam format
domain in.addr-arpa (ARPA dipakai  sebab  internet berawal dari ARPAnet).
pemakaian  in.addr-arpa yaitu  pemetaan terbalik dari suatu alamat IP. Contoh: IP dengan
alamat 129.34.139.30, pada database ditulis dengan 30.139.34.129.in-addr.arpa. lalu 
dicari nama host yang cocok. Sistem ini dinamakan  pointer query.
--Pendistribusian Nama Domain
Pengaturan nama suatu domain dapat dilakukan di jaringan lokal, hal ini disebabkan cara
kerja DNS memakai  sistem zones of authority atau yang biasa disingkat zones. Dimana
dengan sistem zones ini suatu nameserver dapat mendelegasikan suatu nama domain ke
nameserver lainnya yang terhubung melalui internetworking. 
Pada nameserver root, nameserver mendelegasikan suatu domain ke suatu nameserver.
Contoh : domain eepis-its.edu, dimana nameserver .edu di eduacause.net mendelegasikan
nama eepis-its ke nameserver di jaringan kampus PENS. Nama domain eepis-its
didelegasikan ke nameserver ns1.eepis-its.edu (20--54.187.2) dan ns2.eepis-its.edu
(20--54.187.3). Dan pada nameserver ns1 dan ns2 dicatat nama-nama host dari jaringan
eepis-its.edu.
--Domain Name Resolution
Proses yang dilakukan pada penanyaan nama domain antara lain :
1. Suatu program memakai  gethostbyname().
2. Resolver menanyakan ke suatu nameserver
3. Nameserver mengecek apakah ada jawaban di database lokal atau di penyimpanan 
sementara (cache). jika  tidak diketemukan nameserver akan meneruskan ke 
nameserver lainnya sesuai dengan hirarki nama domain.
4. Program pada pemakai  menerima jawaban berupa alamat IP atau pesan error jika 
terjadi kesalahan.
Proses diatas dinamakan  Domain Name Resolution, yaitu   aplikasi berbasis server-
client. Fungsi client dilakukan oleh resolver secara transparan terhadap pemakai . Sedangkan
fungsi server dilakukan oleh Nameserver.
Pengiriman ini memakai  jalur UDP dan TCP.
-- Domain name full resolver
Dikatakan full resolver jika  dilakukan DNS resolution dari program pemakai , dan di
query ke suatu nameserver dari program resolver untuk di proses. 
--Domain name stub resolver
Sebuah program yang dilengkapi dengan subrutin pemrosesan nama domain dan dapat
melakukan query ke nameserver dinamakan  domain name stub resolver. Dimana pada UNIX,
stub resolver dilakukan dengan subrutin gethostbyname() dan gethostbyaddr(). Stub resolver
-- Operasi Domain Name Server
Tipe dari nameserver antara lain :
Primary Nameserver memakai  zones dari disk dan memiliki autorisasi 
terhadap keseluruhan zone
Secondary Nameserver ini memiliki autorisasi terhadap keseluruhan zone namun  data 
zone diambil dari nameserver primary dengan memakai  proses zones 
transfer. 
Caching-only Sebuah nameserver yang tidak memiliki autorisasi dan data zone. namun  
hanya melakukan penerusan query ke suatu nameserver yang sudah dicatat
--Resource Record dari Domain Name System
Database dari DNS dinamakan  dengan resource record (RR),  dimana didalamnya dimulai
dengan Start of Authority (SOA), dimana SOA mencatat nama dari domain. lalu  ada
penunjukan nameserver (NS) yang akan menjawab nama dari domain ini . 
Format resource record :
Tabel 9.7 Format Resource Record dari DNS
Nama TTL Class Tipe RData
Dimana :
- Nama : nama dari domain
- TTL : Time-to-live, lama waktu suatu nama akan berada dalam cache. Satuan yang
dipakai  detik, contoh 86400 yaitu  1 hari.
- Class : mengidentifikasikan nama protokol, contoh IN (sistem Internet)
- Tipe : mengidentifikasi tipe dari resource record
Tabel  Tipe dari RR
Tipe Nilai Arti
A 1 Alamat host
CNAME 5 Canonical Name, nama alias dari suatu host
HINFO 13 CPU dan OS yang dipakai  suatu host, bersifat komentar
MX 15 Mail Exchange untuk suatu domain
NS 2 Nameserver yang memiliki authority untuk suatu domain
PTR 12 Pointer untuk nama domain
SOA 6 Start of Authority
WKS 11 Well-Known Services, memberi  spesifik dari suatu layanan di
jaringan ini 
- RData : nilainya bergantung dari tipenya, contoh:
o A Alamat IP
o CNAME nama domain
o MX 16 bit prioritas diikuti dengan nama domain
o NS nama host
o PTR nama domain
--Transport
Pesan DNS dikirimkan melalui UDP dan TCP
- UDP : port 53
o dipakai  untuk transfer zone antar nameserver, dengan panjang pesan 512 
byte.
- TCP : port 53
o Panjang total frame dari pesan
-- Aplikasi DNS
DNS di implementasikan pada :
host Mendapatkan alamat IP dari suatu nama host atau mendapatkan nama host dari 
suatu alamat IP
nslookup Mencari informasi tentang node jaringan, dan memeriksa isi database dari 
nameserver
dig Mencari informasi yang lebih lengkap dari suatu nama domain. DIG singkatan 
dari Domain Internet Groper
Bind Aplikasi nameserver
--Dynamic Domain Name System (DDNS)
DDNS dipakai  pada client yang memakai  sistem DHCP, dimana DHCP server
mengirimkan pesan kepada nameserver untuk mencatat IP dan nama host. Cara kerja DDNS
Dimana :
1. Client mendapatkan alamat IP dari DHCP server
2. Client mengirimkan nama host dengan alamat IP menuju DHCP server
3. Mengirim permintaan pembaruan pada saat proses DHCP
4. Mendaftarkan PTR RR alamat IP ke nama host
9.3 Network Information System (NIS)
NIS bukan yaitu  standar internet. NIS dipakai  untuk berbagi informasi pada
lingkungan unix. Informasi yang dapat dibagi antara lain /etc/passwd, /etc/group dan
/etc/hosts. 
NIS memiliki kelebihan antara lain :
- memberi  konsistensi ID pemakai  dan ID group pada jaringan yang besar
- Mempersingkat waktu untuk mengelola ID pemakai , ID group dan kepemilikan
NFS baik oleh pemakai  itu sendiri maupun sistem administrator
Sistem NIS terdiri dari :
NIS master server Mengelola peta atau database dari password pemakai 
NIS slave server Cadangan dari NIS master server
NIS client Sistem yang dilayani oleh NIS server
-- Eksekusi Jarak Jauh
Salah satu dasar mekanisme jaringan komputer yaitu  dapat melakukan perintah komputer
secara jarak jauh. pemakai  dapat menjalankan aplikasi programnya pada komputer yang
letaknya terpisah secara jauh. Salah satu aplikasi yang dapat melakukan aksi jarak jauh
yaitu  TELNET.
--TELNET
Telnet yaitu  protokol standar dengan STD nomer 8. Dijelaskan pada RFC 854 –
TELNET protocol spesification dan RFC 855 – TELNET options Spesifications.
TELNET memberi  interface pada suatu program di salah satu host (TELNET client)
untuk mengakses sumber daya yang berada pada host yang lainnya (TELNET server)
sehingga client akan merasakan melakukan kegiatan seperti pada hostnya sendiri. Terlihat
seperti pada disini    10 .86.
disini   10.86 TELNET – melakukan login jarak jauh dengan TELNET
contoh , seorang pemakai  memakai  sebuah workstation pada LAN melakukan
akses ke suatu host yang juga terhubung pada LAN sehingga merasa seperti memakai terminal pada host. Kebanyakan telnet tidak memberi  fasilitas grafik interface.
--Remote Execution Command protocol (REXEC dan RSH) Remote EXEcution Command Daemon (REXECD) yaitu  yaitu  server yang
memperbolehkan menjalankan suatu perintah yang dikirimkan oleh suatu host melalui
jaringan TCP/IP, client memakai  aplikasi REXEC atau memakai  Remote Shell
Protocol (RSH) untuk mentransfer suatu kegiatan dari host satu ke host yang lainnya.
REXECD yaitu  server (atau daemon). Dimana tugasnya menangani perintah dari host
lainnya, lalu  meneruskan perintah ini  ke virtual machine untuk dilakukan action
perintah. Daemon memberi  login secara otomatis jika  nama user dan password sesudah 
dimasukkan.
REXEC memakai  TCP port 512, sedangkan RSH memakai  Tcp 514. 
--Secure Shell (SSH)
Pada dunia komputer, secure shell atau SSH yaitu  protokol standar yang membentuk jalur
yang aman pada komunikasi antar komputer. SSH memakai  teknik enkripsi public key
pada sistem authentikasi pemakai  untuk mengakses komputer yang lain. SSH memberi 
sistem enkripsi pada jalur yang dipakai , sehingga memberi  tingkat keamanan data
yang tinggi. 
SSH biasa dipakai  untuk melakukan remote login dan menjalankan perintah pada
komputer remote, namun  SSH juga dapat dipakai  sebagai tunnel jaringan, melakukan
penerusan pada port TCP, dan koneksi X11. Selain itu dapat juga dipakai  untuk
mentransfer suatu file dengan protokol SFTP atau SCP. SSH server bekerja pada port 22.
--Sejarah SSH
Pada tahun 1995, Tatu Ylonen, peneliti dari Helsinki University of Technology, Finlandia,
mendesign suatu protokol keamanan yang bisa mengamankan dari teknik password sniffing.
Keberhasilan SSH menggantikan protokol rlogin, TELNET, dan rsh. Dimana protokol-
protokol ini  tidak memberi  fasilitas keamanan authentikasi dan kerahasiaan data.
Ylonen mempublikasikan protokol ini secara freeware pada juli 1995. 
Pada Desember 1995, Ylonen mendirikan SSH Communications Security yang dipakai 
untuk memasarkan dan mendevelop SSH, dan SSH berkembang menjadi protokol
proprietary.
Pada 1996, SSH-1 mengalami revisi menjadi SSH-2 dengan memakai  algoritma yang
lebih aman.
Pada tahun 1999, beberapa komunitas menginginkan adanya versi SSH yang berbasis open
source, sehingga dibentuk yang namanya OpenSSH.
--pemakaian  SSH
SSH banyak dipakai  untuk :
- Dengan SSH client yang dipakai  untuk pengontrolan server secara jarak jauh.
- Dengan kombinasi SFTP dapat melakukan transfer file 
- Dengan kombinasi rsync dapat dipakai  sebagai mirror, backup 
- Dengan kombinasi SCP dipakai  untuk aplikasi rcp dengan kemampuan keamanan 
data
- Penerus Port atau tunneling
--Virtual Network Computing (VNC)
VNC yaitu  sistem yang dipakai  untuk melakukan pembagian sumber untuk desktop, dimana
memakai  protokol RFB (Remote Frame Buffer) yang dipakai  untuk mengatur komputer lain secara
jarak jauh. VNC mengirimkan informasi penekanan tombol keyboard dan klik pada mouse sehingga dapat
mengontrol komputer lain pada jaringan dan menampilkan layar pada komputer pengontrol.
VNC bersifat platform-independent, artinya VNC viewer dapat terhubung dengan VNC server walau
berbeda sistem operasi. Terdapat berbagai macam VNC server-client dan dalam bentuk java. VNC dapat
dikendali  dari beberapa client sekaligus dalam saat yang bersamaan. VNC banyak dipakai  dalam hal
remote technical support, akses file dari komputer di rumah ke komputer tempat kerja. 
VNC pertama kali dikembangkan di AT&T, dan bersifat opensource dengan lisensi GPL. 
--Cara Kerja VNC
VNC memiliki 2 bagian yaitu, client dan server. Server yaitu  program yang membagi sumber dan layar
pada komputer, dan Clinet (viewer) yaitu  program yang melihat dan melakukan interaksi dengan server. 
VNC memakai  protokol yang sederhana berdasar  cara kerja graphic yaitu “letakkan kotak pada
posisi x,y yang diberikan”. Server mengirimkan framebuffer sebesar kotak yang ditentukan kepada client.
Sehingga untuk mengirimkan disini  hanya diperlukan untuk bagian yang bergerak saja, namun  bila terjadi
pergerakkan disini  yang menuntut sepenuh layar, maka disini  yang dikirimkan juga sebesar disini 
sepenuh layar ini .
VNC memakai  port 5900 hingga 5906, tiap port mewakili dari port pada layar X-windows (port 5900
hingga 5906 untuk layar 0 hingga 6). Untuk viewer berupa java diimplementasikan pada RealVNC pada
port 5800 hingga 5806. Port ini  dapat dirubah.
Pada komputer Windows, komputer hanya dapat memakai  1 layar tidak seperti Unix. Sehingga hanya
memakai  port 5900.
disini   10.89 VNC di Windows mengakses VNC di MAC dan Linux
--Remote Desktop Protocol (RDP)
RDP yaitu  protokol multi-channel yang memperbolehkan user untuk terkoneksi dengan Microsoft
Terminal Services. Untuk client dapat dilakukan dari sistem operasi Windows, dan sistem operasi yang
lainnya seperti Linux, FreeBSD, Mac OS X. Pada bagian server aplikasi memakai  port 3389.
Versi awal dari RDP yaitu  versi 4.0, dimana dipakai  pada Terminal Services pada sistem operasi
Windows NT 4.0 Server, Terminal Server Edition. Pada Windows 2000 menjadi versi 5.0 dengan tambahan
fitur seperti dapat melakukan mencetak pada printer yang terpasang di komputer lokal. Versi 5.1 berada di
Windows XP Proffesional, dimana mampu menampilkan grafik 24-Bit dan suara. Versi 5.2 terdapat di
Windows 2003, dimana memiliki fitur console mode connection. Dan pada windows Vista akan
memakai  versi 6.0
--fitur
- Mendukung pemakaian  warna 24bit
- Enkripsi 128bit
- Mendukung Transport Layer Security
- memakai  aplikasi audio namun  didengarkan di komputer lokal
- File System Redirection
- Printer Redirection
- Port Redirection
- Clipboard dapat dipakai  pada komputer lokal atau komputer remote
- Berbagi sumber harddisk dengan komputer remote

--Contoh Aplikasi
-- Protokol Transfer File
Protokol TCP/IP memiliki beberapa aplikasi, terutama yang berhubungan dengan memodifikasi file. Ada 2
mekanisme untuk melakukan transfer file, mekanisme yang pertama melakukan pengiriman file dari
komputer lain ke komputer lokal, dan mekanisme yang lain yaitu  memakai  mekanisme file sistem,
dimana ada suatu mekanisme yang memperbolehkan suatu pemakai  untuk melakukan perubahan terhadap
file yang berada di komputer yang lain.
Contoh protokol yang memakai  mekanisme pertama yaitu  FTP dan TFTP, sedangkan yang
memakai  mekanisme kedua yaitu  NFS.
-- File Transfer Protocol (FTP)
FTP yaitu  protokol standar dengan STD nomer 9. Dijelaskan pada RFC 959 – File Transfer Protocol
(FTP) dan diupdate dengan RFC 2228 – FTP security extention.
Melakukan duplikat file dari komputer yang satu dengan komputer yang lain dengan dapat dilakukan 2
arah. Client dapat mengirim file menuju ke server atau dapat meminta suatu file dari server.
Untuk mengakses file di server, pemakai  diharuskan untuk mengidentifikasikan dirinya terlebih dahulu.
Dan server akan melakukan proses authentikasi untuk pemakai  ini . 
FTP memakai  koneksi berbasis connection-oriented, sehingga dari kedua sisi harus memiliki koneksi
TCP/IP.
-- Sekilas tentang FTP
FTP memakai  TCP sebagai protokol transport. FTP server menerima koneksi pada port 20 dan 21.
Diperlukan 2 koneksi, yaitu untuk login dengan memakai  protokol TELNET, dan yang satunya
dipakai  untuk transfer file.
Pada kedua sisi jaringan, aplikasi FTP dilengkapi dengan protocol interpreter (PI), data transfer process
(DTP), dan tampilan antar muka.
Sehingga prinsip kerja protokol FTP yaitu , user interface melakukan perintah melalui PI dan dilanjutkan
ke sisi server. Untuk melakukan transfer file PI memberi  perintah kepada DTP untuk mengirimkan file.
 – Prinsip kerja FTP
.--Operasional FTP
saat  melakukan FTP, pemakai  akan melakukan beberapa atau semua operasional yang ada, yaitu :
- Melakukan koneksi ke host lain
99
o Dengan perintah Open dan memasukkan user dan password dengan perintah User dan 
Pass. 
- Memilah direktori
o Dengan perintah cd dan menunjuk ke direktori yang dituju
- Melihat list dari file
o Dengan perintah dir atau ls
- Memilih cara transfer file
o Dengan perintah bin atau ascii
- Mentransfer file
o Dengan perintah get untuk mengambil file, mget untuk mengambil file dengan jumlah 
lebih dari 1, put¸mengirim file, dan mput mengirim file dengan jumlah lebih dari 1.
- memakai  mode passive 
o Dengan perintah passive client yang berada di balik firewall dapat melakukan FTP 
seolah-olah berasal dari luar firewall.
- Menutup koneksi
o Dengan perintah quit, bye, atau logout
-- Skenario FTP
Seorang pemakai  pada jaringan LAN, akan mengirimkan file dengan FTP, yang akan dilakukan 
User akan mengakses server dengan nama host01, dimana pada host ini  pemakai  terdaftar sebagai
usernama cms01 dengan password cmspw. lalu  user ini  akan memilah direktori dan memilih
jenis mode transfer yang akan dipakai. Direktori yang dipakai yaitu  191 dan mode yang dipakai 
FIXrecfm80. lalu  pemakai  mengirim file dengan perintah PUT. Nama file yang dikirim yaitu 
file01.tst. Dan terakhir menutup koneksi dengan perintah QUIT.
--Contoh pemakaian  FTP
--Anonymous FTP
Anonymous FTP yaitu  model FTP yang tanpa memakai  authentikasi pada pemakai . Sehingga
pemakai  siapa pun bisa melakukan transfer, namun  biasanya hanya diperbolehkan untuk mengambil suatu
file.
--Trivial File Transfer Protocol (TFTP)
TFTP yaitu  standar protokol dengan STD nomer 33. Dijelaskan pada RFC 1350 – The TFTP 
Protocol. Dan diupdate pada RFC 1785, 2347, 2348, dan 2349.
Transfer TFTP yaitu  transfer file antar disk (disk-to-disk), dengan memakai  API SENDFILE. 
TFTP menggunkan protokol UDP. TFTP client melakukan inisialisasi dengna mengirim permintaan untuk
read/write melalui port 69, lalu  server dan client melakukan negosiasi tentang port yang akan
dipakai  untuk melakukan transfer file. 
-- pemakaian  TFTP
Perintah TFTP <hostname> membawa pemakai  pada prompt interaktiv, dimana dapat melanjutkan dengan
sub perintah, antara lain
Connect <host> Menentukan tujuan
Mode <ascii/binary> Menentukan mode pengiriman
Get <nama file remote> [<nama file lokal>] Mengambil file
Put <nama file remote> [<nama file lokal>] Menaruh file
Verbose
Quit Keluar TFTP
--Network File System (NFS)
SUN Microsystems Network File System (NFS) yaitu  protokol yang dapat membagi sumber daya melalui
jaringan. NFS dibuat untuk dapat independent dari jenis mesin, jenis sistem operasi, dan jenis protokol
transport yang dipakai . Hal ini dilakukan dengan memakai  RPC. 
NFS dijelaskan pada RFC 1813 – NFS: NFS Version 3 Protocol dan RFC 3010 – NFS Version 4 Protocol.
--Konsep NFS
NFS memperbolehkan user yang sudah  diijinkan untuk mengakses file-file yang berada di remote host
seperti mengakses file yang berada di lokal. Protokol yang dipakai  :
1. Protokol mount menentukan host remote dan jenis file sistem yang akan diakses dan menempatkan
di suatu direktori
2. Protokol NFS melakukan I/O pada remote file sistem
Protokol mount dan protokol NFS bekerja dengan memakai  RPC dan mengirim dengan protokol TCP
dan UDP.
.-- Protokol Mount
Protokol ini dipakai  untuk membuat link dengan cara me-mount pada suatu direktori
Perintah yang dipakai  yaitu  mount. 
disini   11.94 Protokol Mount
Untuk mengakses pemakai  harus menjalankan program mount terlebih dahulu, contoh :
# mount //remote/share /mnt
Peritah ini  dipakai  untuk mengakses server dengan nama remote dan memiliki direktori yang
dibagikan dengan nama share, lalu  di mount di direktori /mnt pada komputer lokal.
Sesudah  selesai memakai  atau memodifikasi file, pemakai  harus melakukan pelepasan dengan
perintah umount, contoh :
# umount /mnt
--Protokol NFS
NFS yaitu  program RPC yang memberi  I/O kepada remote host, sesudah  di lakukan permintaan oleh
program mount.
--NFS versi 4
yaitu  perbaikan dari versi 3, dengan beberapa fitur tambahan antara lain :
- Mengurangi transfer informasi yang dibutuhkan oleh protokol mount
- Keamanan pada layer RPC
- Mendukung RPCSEC_GSS
- Mendukung kerberos
- Bentuk baru dari file handle
- Gabungan perintah lookup dan read
- Mendukung format file 32bit
--. Aplikasi Surat (Mail)
Electronic-Mail (E-Mail) yaitu  aplikasi TCP/IP yang paling banyak dipakai . Bab ini membahas
protokol yang mendukung aplikasi email.
-- Simple Mail Transport Protocol (SMTP)
SMTP yaitu  protokol dasar yang bertugas untuk menukarkan email (mail exchange) antar host yang
berbasis TCP/IP. Standar dari protokol ini ada 3 yaitu :
- Standar yang dipakai  untuk pertukaran email antar komputer (STD 10/RFC 821), dinamakan 
standar SMTP
- Standar yang dipakai  untuk format pesan (STD 11) dengan dijabarkan pada RFC 822 yang
berisi tentang sintak mail dan RFC 1049 yang berisi tentang pemakaian  file yang bukan berupa
ASCII text (email memakai  7bit ASCII) supaya dapat dipakai  pada badan email. Standar
ini dinamakan  MAIL
- Standar yang dipakai  untuk menjalurkan email berdasar  domain name system (DNS),
dijabarkan pada RFC 974 dengan nama DNS-MX
Standar diatas dipakai  untuk email yang memakai  format bahasa Inggris, sedangkan standar
pemakaian  email yang mendukung pemakaian  bahasa lain antara lain :
- Multipurpose Internet Mail Exchange (MIME) dijabarkan pada RFC 2045 hingga 2049.
- Pelayanan tambahan dari SMTP berupa : pemberitahuan service extension pada SMTP client,
pemakaian  8bit format data, batas ukuran email.
.-- Cara kerja SMTP
SMTP bekerja berdasar  pengiriman end-to-end, dimana SMTP client akan menghubungi SMTP server
untuk segera mengirimkan email. SMTP server melayani pemakai  melalui port 25.
Dimana setiap pesan harus memiliki :
- Header atau amplop, yang dijabarkan pada RFC 822. 
- Kontent, yang berisi tentang isi dari surat yang akan dikirimkan. 
.--.1 Format mail header
pemakai  tidak perlu kebingungan tentang mail header, sebab  semuanya sudah diatur oleh SMTP. 
Format dari mail header yaitu  
Bagian-nama : Bagian-isi
Contoh pemakaian  mail header :
To: Sukaridhoto <dhoto@eepis-its.edu>
Contoh bagian header yang sering dipakai  antara lain
Tabel  SMTP – Header yang sering dipakai 
Kata kunci Nilai to Tujuan dari email
cc Tujuan kedua dari email (carbon-copy)
from Pengirim email
reply-to Alamat pengembalian email
return-path Alamat host untuk pengembalian email
Subject Subjek tentang email yang diisikan oleh pemakai 
--Mail Exchange
Model SMTP dapat dilihat pada disini    12 .97. Dari hasil pemakai  meminta mail. SMTP pengirim
melakukan koneksi 2 arah dengan SMTP penerima. SMTP dapat berupa tujuan akhir atau penerus (mail
gateway). SMTP pengirm akan membangkitkan perintah untuk melakukan reply to pada SMTP penerima.
Diagram alir pertukaran surat SMTP
Pertukaran email yang terjadi yaitu  antaralain  :
1. SMTP Pengirim melakukan koneksi TCP/IP dengan SMTP penerima dan menunggu server untuk
mengirim pesan 220 yang menandakan pelayanan terhadap pesan sudah siap atau pesan 421
pelayanan tidak siap
2. HELO (kependekan dari hello) dikirim oleh server dengan menunjukkan nama domain.
3. Pengirim akan memulai memberi  perintah kepada SMTP dimana jika  SMTP mendukung
perintah ini  akan membalas dengan pesan 250 OK
4. memberi  informasi kepada SMTP tentang tujuan dari email dengan perintah RCPT TO
dilanjutkan dengan alamat email yang dituju.
5. Sesudah  tujuan diset, dilanjutkan dengan perintah DATA yang menunjukkan bahwa baris
berikutnya yaitu  isi dari email dengan diakhiri dengan <CRLF>.<CRLF>
6. Client mengisikan data sesuai dengan pesan yang akan dikirimkan hingga mengisikan
<CRLF>.<CRLF>
7. Pengirimkan akan menghentikan kegiatan dengan memberi perintah QUIT. 
.--SMTP dan Domain Name System
jika  jaringan memakai  DNS, maka SMTP tidak dapat hanya dengan mudah mengirimkan suatu
email ke TEST.IBM.COM hanya dengan membuka koneksi TCP ke TEST.IBM.COM. Yang dilakukan
pertama kali yaitu  melakukan query ke server name dan mendapatkan hasil ke arah mana tujuan ini, SMTP akan mencari record pada DNS dengan tanda MX, dan akan mengirimkan ke email ke host yang tercatat pada host ini 
--Multipurpose Internet Mail Extensions (MIME)
MIME yaitu  standar internet yang menyambung format email supaya mendukung format text dengan
format selain US-ASCII, non-text attachment, multi-part pada badan pesan, dan informasi pada header.
Keseluruhan email yang ditulis oleh pemakai  akan dikirim melalui SMTP dengan format MIME. Selain
dipakai  pada sistem email MIME juga dipakai  pada protokol lainnya seperti HTTP pada world wide
web. MIME dijabarkan pada RFC 2045, RFC 2046 dan RFC 2049. Dasar internet untuk protokol email ,
SMTP, hanya mendukung 7bit ASCII, sebab  itu ditambah dukungan dengan MIME supaya bisa
mendukung yang lainnya.
--Header yang terdapat pada MIME
disini   1--01 Contoh MIME
--MIME-Version
Versi yang dipakai  pada MIME
MIME-Version: 1.0
.--Content-Type
Tipe yang dipakai  pada pesan
Content-Type: text/plain
Tabel  Contoh Content-type
Tipe Subtipe Deskripsi
Text Plain Unformated text
Enriched Text yang memiliki format
Image Gif disini  dengan format GIF
Jpeg disini  dengan format JPEG
Audio Basic Suara
Video Mpeg Film dengan format MPEG
Application Octet-Stream Sequence yang tidak terinterpreted 
Postscript Dokumen for postscript
Message RFC822 MIME RFC 822
Partial Pesan yang dipisah
External-body Pesan yang ditarik dari jaringan
Multipart Mixed Independent
Alternative Pesan yang sama beda format
Parallel Bagian yang harus dilihat secara bersamaan
Digest Tiap bagian yaitu  bagian RFC 822
--Content-Transfer-Encoding
Metode yang dipakai  untuk pengiriman pada email,  yaitu :
- 7bit
- Quoted-printable
- Base64
-- Encoded-Word
dipakai  bila memakai  karakter lain
--Multipart-Messages
Pemisah bagian pesan
Content-type: multipart/mixed; boundary="frontier"
MIME-version: 1.0
This is a multi-part message in MIME format.
--frontier
Content-type: text/plain
This is the body of the message.
--frontier
Content-type: text/html; encoding=UTF-8
Content-transfer-encoding: base64
  
PGh0bWw+CiAgPGhlYWQ+CiAgPC9oZWFkPgogIDxib2R5PgogICAgPHA+VGhpcyBpcyB0aGUg
Ym9keSBvZiB0aGUgbWVzc2FnZS48L3A+CiAgPC9ib2R5Pgo8L2h0bWw+Cg==
--frontier--
--Post-Office-Protocol (POP)
Para pemakai  email, akan memakai  protokol POP untuk mengambil email yang berada di server.
Protokol yang dipakai  sekarang yaitu  versi 3 sehingga dinamakan  POP3.
POP3 berkembang dari protokol sebelumnya yang dinamakan  POP (dinamakan POP1) dan POP2. 
Protokol POP3 didesign untuk pemakai  dengan jaringan yang sebentar-bentar harus dimatikan. Sehingga
pemakai  dapat memakai  email tanpa harus terkoneksi secara terus-menerus. Walaupun pada POP3
terdapat pilihan “leave messages on server”, pemakai  email biasanya akan mengkoneksikan, mengambil
email dan menyimpan pada PC, menghapus email di server dan memutus koneksi. 
POP3 server melayani pemakai  melalui port 110. 
-- Internet Message Access Protocol version 4 (IMAP4)
IMAP4 yaitu  protokol yang dapat dipakai  oleh pemakai  untuk membaca email di suatu server.
IMAP4 dijabarkan pada RFC 3501. 
Contoh pemakaian  telnet pada IMAP
Client memakai  MUA (Mail User Agent) untuk membaca email dengan cara POP3 atau IMAP4. Dan
untuk mengirimkan email melalui protokol SMTP.
Antar mail server atau MTA (Mail Transfer Agent) saling bertukar email melalui protokol SMTP, dan
menyimpan email dalam format Mbox atau Maildir.
Mbox yaitu  tipe penyimpanan email dimana email disimpan dalam 1 file untuk masing-masing user.
Maildir yaitu  tipe penyimpanan email dimana email disimpan dalam 1 folder untuk masing-masing user.
--World Wide Web
Bab ini menjelaskan beberapa protokol dan aplikasi yang menjadikan internet mudah dipakai  dan
populer. Sebagai bukti, trafik world wide web yang memakai  layanan hypertext transfer protocol
(HTTP), dapat melebihi pemakaian  protokol lainnya seperti TELNET dan FTP dalam pemakaian 
bandwidth. Dapat dipastikan setiap sistem operasi modern sudah  dilengkapi dengan aplikasi web browser,
bahkan beberapa dilengkapi dengan web server. Dengan itu akan semakin mudah bagi pemakai  dan dunia
bisnis untuk dapat saling bertukar informasi di dunia jaringan komputer.
World wide web pertama kali dikembangkan pada tahun 1989 oleh Tim Berners Lee di European
Laboratory untuk Particle Physic. dipakai  untuk berbagi dokumen dengan para ilmuwan.
Pada tahun 1993, pemakaian  web semakin semarak, dengan dikembangkannya web browser berbasis
grafik user interface oleh National Center of Supercomputing Applications (NCSA) yang dinamakan  mosaic.
Sehingga pemakai  semakin mudah untuk melakukan akses web. 
--Hypertext Transfer Protocol (HTTP)
HTTP yaitu  suatu metode yang dipakai  untuk transfer suatu informasi melalui world wide web.
Didesign untuk memberi  cara untuk mempublikasikan dan mengambil halaman HTML.
Pengembangan HTTP dikoordinir oleh World Wide Web Concortium berkolaborasi dengan Internet
Engineering Task Force, menghasilkan RFC 2616 yang berisikan tentang HTTP/
--.HTTP yaitu  protokol yang dipakai  untuk request/respon antara client dan server. Bentuk dari client
yaitu  web browser, spider atau bentuk lainnya yang direferensi sebagai user agent. Dan tujuan server,
dimana menyimpan atau membuat sumber daya seperti file HTML dan file disini , dinamakan  origin server.
Diantara server dan client bisa terdapat penghubung (intermediate) antara lain proxy, gateway atau tunnel.
HTTP client memulai requestnya dengan memakai  TCP sebagai layer transportnya dengan mengakses
port 80 pada server.
Sumber daya yang diakses melalui HTTP dinamakan  Uniform Resource Identifiers (URI) dengan mengakses
suatu Uniform Resource Locators (URL).
--Request Message
Pesan request terdiri dari :
- Request line, seperti GET / images/logo.gif HTTP/--, dimana artinya mengakses file logi.gif pada
direktori images.
- Header, seperti Accept-Language : en
- Baris kosong
- Pilihan badan pesan.
Request line dan header diikuti dengan CRLF (Carriage Return yang diikuti dengan Line Feed).
-Request Method
HTTP mendifinisikan 8 metode yaitu :
HEAD
Meminta respon yang mirip dengan GET hanya saja tanpa dilanjutkan dengan badan pesan. 
Metode ini dipakai  untuk mengambil informasi meta.
GET
Meminta sumber daya yang spesifik, dan dipakai  untuk mengakses halaman web.
POST
Mensubmit suatu data untuk diproses. Data dimasukkan kedalam badan pesan
PUT
Melakukan upload suatu resource ke suatu site
DELETE
Menghapus suatu resource
TRACE
Melakukan echo back terhadap suatu resource, sehingga client dapat melihat intermediate yang 
ada.
OPTIONS
Mengembalikan metode HTTP dari server, dipakai  untuk melihat resource dari suatu web 
server
CONNECT
dipakai  untuk proxy jika  mengakses suatu site yang mendukung SSL
Safe Methods
Metode yang didefiniskan safe antara lain GET dan HEAD, dipakai  hanya untuk pengambilan data dan
tanpa melakukan perubahan disisi server. Metode yang didefinisikan unsafe antara lain POST, PUT dan
DELETE, harus ditampilkan kepada pemakai  dengan cara yang khusus, biasanya dalam bentuk tombol
dan bukan link, dan dapat membuat pemakai  lebih memperhatikan data yang akan dikirimkan.
--Versi HTTP
HTTP berkembang mengikuti perkembangan perangkat lunak. Sehingga versi yang pernah dipakai 
yaitu  :
0.9
Kadaluwarsa dan hanya mendukung metode GET
HTTP/1.0
Protokol yang dipakai  pertama kali dipakai 
HTTP/--
Versi yang sekarang dipakai  dengan mendukung persistent connection dan bekerja dengan
proxy. 
HTTP/1.2
Versi yang akan datang, sedang dikembangkan oleh W3C dan akan dipakai  sebagai HTTP
Extension Framework.
-- Kode Status (Code Status)
Reson pertama kali yang muncul pada saat mengakses suatu web dan dipakai  sebagai kode informasi
status yang dipakai  pada client. Contoh kode status antara lain :
- Informasional (1xx), informasi yang dipakai  untuk mengambil informasi
o 100 Continue
o 101 Switching protocol
- Sukses (2xx), akses yang berhasil
o 200 OK
o 201 Created
o 202 Accepted
o 203 Non-authoritative information
o 204 No-Content
o 205 Reset Content
o 206 Partial Content
- Redirection (3xx), informasi ini memberitahukan kepada user agent untuk melakukan request
tambahan supaya mencapai akses.
o 300 Multiple choices
o 301 Moved permanently
o 302 Moved temporarily
o 303 See Other
o 304 Not Modified
o 305 Use Proxy
114
- Client Error (4xx), terjadi kesalahan pada client
o 400 Bad request
o 401 Unauthorized
o 402 Payment Required
o 403 Forbidden
o 404 Not found
o 405 Method not allowed
o 406 Not acceptable
o 407 Proxy Authentication Required
o 408 Request Timeout
o 409 Conflict
o 410 Gone
o 411 Length Required
o 412 Precondition failed
o 413 Request entity too large
o 414 Request URI too long
o 415 Unsupported media
- Server error (5xx), informasi ini memberitahukan kepada client bahwa terjadi kesalahan di server.
o 500 Internal server error
o 501 Not implemented
o 502 Bad Gateway
o 503 Service unavailable
o 504 Gateway timeout
o 505 HTTP version not supported
--Contoh
Berikut ini yaitu  contoh komunikasi HTTP antar client dan server. Server berjalan di 
www.sample.com, dengan port 80.
Client request
--Web Browser
Web browser yaitu  aplikasi perangkat lunak yang membantu pemakai  untuk dapat melakukan interaksi
dengan tulisan, disini  dan informasi lainnya yang terdapat di suatu halaman web pada suatu website padaWorld Wide Web. Tulisan dan disini  dapat berupa hyperlink pada halaman lain pada website yang samaatau berbeda. 
Web browser terdapat di personal computer dengan aplikasi Microsoft Internet Explorer, Mozilla Firefox,
Appe Safari, Netscape dan Opera (rangking menurut survey 2006). Web browser yaitu  HTTP user
agent. 
Web Browser berkomunikasi dengan memakai  protokol HTTP pada suatu URL. Kebanyakan browser
sudah mendukung protokol lainnya seperti FTP (File Transfer Protocol), RTSP (Real Time Sreaming
Protocol) dan HTTPS (Versi HTTP yang mendukung enkripsi SSL).
-- Sejarah
Tim Berners-Lee memakai  NeXTcube sebagai aplikasi web server pertama kali pada tahun 1990, dan
memperkenalkan pada CERN pada tahun 1991. Sehingga semenjak tahun ini  pengembangan web
browser semakin meningkat.
Web browser pertama yaitu  Silversmith, diciptakan oleh John Bottoms pada tahun 1987, memakai 
sistem SGML. lalu  disusul oleh ViolaWWW yang berbasis HyperCard. 
Perkembangan web browser meledak semenjak terciptanya NCSA Mozaic, yaitu   web browser
dengan GUI pertama kali, dikeluarkan pada September 1993. Marc Andreessen yaitu   kepala
proyek ini  keluar dari NCSA dan membuat perusahaan dengan nama Netscape Communications
Corporation.
Netscape mengeluarkan produk dengan nama Navigator pada tahun 1994, dan menguasai pasar dunia.
lalu  diikuti oleh Microsoft dengan mengeluarkan produk web browser dengan nama Internet
Explorer, yang dibeli dari perusahaan Spyglass Inc. Hal ini yang menimbukan perang web browser, perang
antara Microsoft dan Netscape.
Perang berlanjut dengan masing-masing perusahaan memberi  fitur-fitur tambahan seperti Cascading
Style Sheet (CSS) dari Microsoft dan JavaScript Style Sheet(JSSS) dari Netscape. lalu  Netscape
semakin kalah dibandingkan dengan Microsoft dengan dalih pemakaian  web browser yang sudah menjadi
satu dengan sistem operasi OEM.
Akhirnya Netscape membuat produknya menjadi Open Source dengan membuat projek Mozilla.
Perusahaan Netscape lalu  dibeli oleh America Online pada tahun 1998, hal ini manarik developer
sehingga pada tahun 2002 mengeluarkan Mozilla 1.0. Projek ini semakin berkembang dan pada tahun 2004
keluar produk dengan nama Mozilla-Firefox dengan versi 1.0. Pada tahun 2005 keluar versi 1.5, versi 2
dijadwalkan akan keluar pada tahun 2006 dan sudah dipersiapkan produk Firefox 3. Sekarang Firefox
yaitu  web browser yang banyak dipakai , hampir 10% dari Traffik Internet.
Opera, web browser yang dapat dijalankan di perangkat genggam dan PC keluar pada tahun 1996.
Lynx yaitu  web browser favorit bagi pemakai  shell di unix.
Macintosh mengeluarkan Apple Safari yaitu   web browser yang dikembangkan dari projek
Konqueror. Safari dipakai  pada sistem operasi Mac OS X.
--Fitur
Standar web browser harus mendukung fasilitas antaralain  :
- HTTP dan HTTPS
- HTML, XML dan XHTML
- Format disini  termasuk GIF, PNG, JPEG, dan SVG
- Cascading Style Sheet (CSS)
- Java Script (Dynamic HTML) dan XMLHttpRequest
- Cookie
- Digital Certificate
- Favicons
- RSS, Atom
Sedangkan fitur fundamental yang harus didukung antara lain :
- Bookmark
- Caching dari isi web
- Mendukung media lain melalui plugin, contoh Macromedia Flash
Fasilitas tambahan seperti
- Autocompletition dari URL
- Browsing secara Tabular
- Navigasi spasial
- Navigasi Caret
- Screen Reader
Fasilitas penghilang pengganggu
- Pop-Up advertisement
- Filter iklan
- Pertahanan terhadap phising
--Struktur Web Browser
Secara keseluruhan web browser memiliki struktur 
--Web Server
Pengertian web server dapat diartikan antaralain  :
1. Komputer yang memiliki tanggung jawab untuk menerima HTTP request dari client, yang
biasanya memakai  web browser dan melayani dalam bentuk halaman web, dimana biasanya
berupa dokumen HTML 
2. Program komputer yang melayani HTTP.
--Fitur
Banyak program web server yang beredar, namun  pada dasarnya memiliki fitur yang sama yaitu : 
1. HTTP: merespon permintaan HTTP dan memberi  jawaban HTTP dengan memberi 
dokumen HTML dan memberi  informasi kesalahan bila terjardi kesalahan.
2. Logging: web server memiliki fasilitas logging tentang informasi client yang melakukan request,
respon yang diberikan oleh server, disimpan pada suatu file log. Dari file log ini  webmaster
dapat membuat analisa statistik dengan menjalan aplikasi log analyzer.
Pada prakteknya webserver juga memberi  fasilitas lainnya yaitu :
1. Configurability, dapat dilakukan konfigurasi bahkan dengan aplikasi eksternal
2. Authentication, memberi  fasilitas authorisasi (meminta informasi username dan password),
sebelum mengakses suatu atau semua resource
3. Dapat menangani tidak hanya konten static namun  juga konten dinamik yang diberikan dari
berbagai interface (SSI, CGI, SCGI, FastCGI, PHP, ASP, ASP.NET, ServerAPI, )
4. Mendukung Modular, memberi  fasilitas diluar program inti, dan ditempatkan dalam bentuk
modular, sehingga server bisa memanggilnya jika  diperlukan.
5. HTTPS protokol HTTP dengan keamanan enkripsi dari SSL maupun TLS. memakai  koneksi
pada port 443.
6. Kompresi terhadap konten dengan memakai  fasilitas gzip, sehingga bisa mengurangi
pemakaian  bandwidth
7. Virtual Host, membentuk multi web server walau hanya memakai  1 alamat IP
8. Mendukung file dengan ukuran besar
9. Bandwidth Throttling, dapat mengatur pemakaian  bandwidth terhadap pengakses
-- Tipe Konten
Konten yang diberikan oleh webserver dapat dikatakan :
- statik, jika  berasal dari file yang terdapat pada filesistem
- dinamik, jika  berasal dari suatu program atau script yang dipanggil oleh web server.
memberi  layanan statik dapat diakses lebih cepat dibandingkan  layanan dinamik, terlebih lagi bila konten
ini  harus mengakses database terlebih dahulu.
--Translasi Path
Web server melakukan peralihan jalur dari URL menuju ke filesistem, dimana URL pada web server relatif
terhadap direktori document root.
Contoh client mengakses suatu alamat 
http://www.example.com/path/file.html
Web browser akan merubah menjadi HTTP/-- request
GET /path/file.html HTTP/--
Host : www.example.com
Web server pada www.example.com akan menambahkan path ini  pada akar direktori. Pada mesin
Unix biasanya terletak di /var/www/htdocs, sehingga menjadi
/var/www/htdocs/path/file.html
Web server akan membaca file ini , jika  file ini  dapat ditemukan maka akan dikirimkan
kepada client sebagai HTTP respon.
--konkuren (concurency)
Aplikasi program web server memakai  teknik pemrograman konkuren. Bahkan dikombinasikan
dengan finite state machine dan non-blocking I/O, untuk melayani permintaan HTTP.
--Sejarah
Pada tahun 1998 Tim Berners-Lee mengusulkan kepada CERN (Pusat penelitian nuklir di Eropa) sebuah
proyek dengan tujuan mempermudah pertukaran informasi antar peneliti dengan memakai  sistem
hypertext. Hasil dari proyek ini yaitu  2 buah program, yaitu browser dengan nama WorldWideWeb dan
Web server, yang jalan di mesin NeXTSTEP. 
--Perangkat Lunak
Top rangking program aplikasi web server yaitu  :
- Apache HTTP Server dari Apache Software Foundation
- Internet Information Services (IIS) dari Microsoft
- Sun Java System Web Server dari Sun Microsystem, dalam bentuk Sun ONE web server, iPlanet 
web server, dan Netscape Enterprice Server
- Zeus Web Server dari Zeus Technology
--Konten
Web server melayani statik konten dan dinamik konten. 
--Konten Statik (Static Content)
Konten yang diambil secara langsung dari suatu file pada filesistem. Contoh dari konten statik antara lain :
- Hypertext Markup Language (HTML)
- Extensible Markup Language (XML)
--Client-Side Dynamic Content
Fungsi dinamis dari aplikasi dijalankan disisi client. Contoh :
- Program dan Applet, contoh Java Applet yang berjalan memakai  Java Virtual Machine
(JVM).
- Java Script, yaitu  komponen dinamis dari web browser
--Server-Side Dynamic Content
Dengan mengakses fungsi yang terdapat di webserver sehingga memperoleh hasil yang sesuai request 
dinamakan  dengan server-side dynamic content. Contoh :
- Common Gateway Interface (CGI), dengan memakai  pemrogam PERL dapat dibuat aplikasi 
yang sesuai dengan keinginan client
- API dari webserver tertentu, contoh Netscape Server API (NSAPI), dan Microsoft internet 
Information Server API (ISAPI)
- Servlet, menjalankan aplikasi applet disisi server
- Server-Side Includes (SSI), dipakai  oleh webserver yang mendukung teknologi JAVA sehingga 
dapat merubah beberapa bagian kecil dari HTML
- Java Server Page (JSP), mengenerate halaman HTML dari suatu aplikasi
- PHP Hypertext Preprocessor (PHP), aplikasi modular yang ditambahkan kepada webserver untuk 
membentuk suatu halaman HTML yang disesuaikan dengan input.
--Manajemen Jaringan
Dengan berkembangnya jaringan TCP/IP yang sangat pesat, maka diperlukan juga suatu manajemen untuk
mengatur jaringan. 
Internet Architecture Board (IAB) merekomendasikan RFC 1052 yang berisikan tentang :
- Simple Network Management Protocol (SNMP)
- ISO Common Management Information Service / Common Management Information Protocol
(CMIS / CMIP)
Dan IAB menyarankan untuk memakai  SNMP.
--Simple network Management Protocol (SNMP)
SNMP yaitu  salah protokol resmi dari Internet Protocol suite yang dibuat oleh Internet Engineering
Task Force (IETF). SNMP yaitu  contoh dari layer 7 aplikasi  yang dipakai  oleh network
management system untuk memonitor perangkat jaringan sehingga dapat memberi  informarsi yang
dibutuhkan bagi pengelolanya.
--Management Information Base (MIBs)
MIB yaitu  database yang dipakai  untuk manajemen perangkat pada jaringan. Database ini 
berisikan objek entiti dari perangkat jaringan (seperti router atau switch). Objek pada MIB didefinisikan
memakai  Abstract Syntax Notation One (ASN 1), dan diberi nama “Structure of Management
Information Version 2 (SMIv2). Software yang dipakai  untuk parsing dinamakan  MIB compiler. 
RFC yang membahas antara lain RFC1155 – Structure and identification of Management Information for
TCP/IP base internets, RFC1213 – Management Information Base for Network Management of TCP/IP-
based internets, dan RFC 1157 – A Simple Network Management Protocol.
SNMP, komunikasi yang terjadi antara management station (contoh: console) dengan management object
(seperti router, gateway dan switch), memakai  MIB. Component yang berkerja untuk mengambil data
dinamakan  SNMP agent, yaitu  software yang dapat berkomunikasi dengan SNMP Manager.
.--Arsitektur SNMP
Framework dari SNMP terdiri dari :
Master Agent
Master agent yaitu  perangkat lunak yang berjalan pada perangkat yang mendukung SNMP, dimana
bertujuan untuk merespon permintaan dari SNMP dari management station. Master agent lalu 
meneruskan kepada subagent untuk memberi  informasi tentang manajemen dengan fungsi tertentu. 
Subagent
Subagent yaitu  perangkat lunak yang berjalan pada perangkat yang mendukung SNMP dan
mengimplementasikan MIB. Subagent memiliki kemampuan :
- Mengumpulkan informasi dari objek yang dimanaj
- Mengkonfigurasi informasi dari objek yang dimanaj
- Merespon terhadap permintaan manajer
- Membangkitkan alarm atau trap
Management Station
Management station yaitu  client dan melakukan permintaan dan mendapakan trap dari SNMP server.
--Protokol SNMP
PDU dari SNMP (versi 1) antara lain :
1. GET REQUEST – dipakai  untuk mendapatkan informasi manajemen
2. GETNEXT REQUEST – dipakai  secara iteratif untuk mendapatkan sekuen dari informasi
manajemen
3. GET RESPONSE
4. SET – dipakai  untuk melakukan perubahan terhadap subsistem
5. TRAP – dipakai  untuk melakukan pelaporan terhadap subsistem manajemen
Untuk versi berikutnya ditambahkan PDU :
1. GETBULK REQUEST – iterasi yang lebih cepat untuk mendapatkan informasi
2. INFORM – acknowledge terhadap TRAP
SNMP memakai  UDP pada port 161 untuk agent dan 162 untuk manager. Manager mengirimkan
permintaan terhadap agent pada port 161 dan diterima pada manager pada port 162.
--Perkembangan dan pemakaian 
Version 1
RFC untuk SNMP, dikenal dengan nama Simple Network Management Protocol version 1, pada tahun
1988 :
- RFC 1065 – Structure and identification of management information for TCP/IP-based internets
- RFC 1066 – Management information base for network management of TCP/IP-based internets
- RFC 1067 – A Simple Network Management Protocol
lalu  menjadi kadaluwarsa dengan digantikan dengan :
- RFC 1155 – Structure and identification of management information for TCP/IP-based internets
- RFC 1156 – Management information base for network management of TCP/IP-based internets
- RFC 1167 – A Simple Network Management Protocol
Versi 1 memiliki kelemahan pada sistem authentifikasi sebab  mengirimkan password secara plain text.
Version 2
Versi 2 ini banyak yang tidak memakai  disebab kan ketidak cocokan framework.
Simple Network Management Protocol version 2 (RFC 1441 – RFC 1452) dan juga dikenal sebagai SNMP
v2. Diperkenalkan GETBULK sebagai alternatif dari GETNEXT. Dikenalkan juga Community-Based
Simple Network Management Protocol version 2 atau yang dinamakan  SNMP v2c sebagai pengganti sistem
authentikasi
User-Based Simple Network Management Protocol version 2, atau SNMP v2u yang dipakai  untuk
memperbaiki keamanan dari SNMP v1.
Version 3
Versi ini didefinisikan pada RFC 3411 – RFC 3418 yaitu Simple Network Management Protocol version 3,
dikeluarkan pada tahun 2004. 
Pada prakteknya SNMP bisa memakai  versi SNMPv1, SNMPv2c, atau SNMPv3. Dijabarkan pada
RFC 3584 – Coexistence between Version 1, Version 2, and Version 3 of the Internet-Standard Network
Management Framework.
Contoh pemakaian 
- Memonitoring waktu pemakaian  suatu perangkat (sysUpTimeInstance)
- Inventory dari versi sistem operasi (sysDescr)
- Mengkoleksi informasi suatu interface (ifName, ifDescr, ifSpeed, ifType, ifPhysAddr)
- Mengukur throughput interface dari jaringan (ifInOctets, ifOutOctets)
- Menarik informasi cache dari ARP (ipNetToMedia)

-- Mengimplementasikan SNMP
snmpwalk
 Keluaran dari snmpwalk
Router Graphing Software
Banyak informasi yang bisa ditampilkan, misal performance, load dan error rate dari suatu jaringan seperti
router atau switch. lalu  dengan fungsi khusus, informasi yang didapat diolah menjadi dalam bentuk
grafik. 
Contoh aplikasi Multi Router Traffic Grapher dan Cacti
-- Multi Router Traffic Grapher
Multi Router Traffic Grapher atau yang disingkat MRTG yaitu  free software yang dipakai  untuk
memonitoring traffik load pada link jaringan. Dimana pemakai  dapat melihat laporan dalam bentuk grafik.
MRTG ditulis dalam bentuk perl dan berjalan di UNIX/Linux dan juga pada sistem operasi Windows dan
juga pada Netware. MRTG memakai  lisensi Gnu GPL.
Dikembangkan pertama kali oleh Tobias Oetiker dan Dave Rand, pertama kali dipakai  untuk
memonitoring router. Sekarang sudah dikembangkan untuk menjadi report berbagai macam. Informasi
lengkap dapat dilihat di http://oss.oetiker.ch/mrtg/
MRTG berkembang menjadi RRDTool, yaitu round-robin database tool. pemakaian  RRDTool dapat
dikembangkan menjadi berbagai macam aplikasi contohnya cacti, JFFNms dan masih banyak lainnya.