JARINGAN KOMPUTER
DAN INTERNET
Internet saat ini bisa dibilang yaitu sistem rekayasa terbesar yang pernah dibuat oleh umat manusia, dengan ratusan jutaan komputer yang
terhubung, tautan komunikasi, dan sakelar; dengan miliaran pengguna
yang terhubung melalui laptop, tablet, dan smartphone; dan dengan
berbagai hal baru yang terhubung dengan Internet termasuk konsol game,
sistem pengawasan, jam tangan, kacamata, termostat, timbangan badan,
dan mobil. Jadi pada pembahasan kali ini kita akan belajar bahwa Internet
yaitu jaringan dari jaringan, dan kita akan pelajari bagaimana jaringan ini
terhubung satu sama lain.
A. Apa itu Internet?
Dalam buku ini, kita akan memakai Internet publik, jaringan
komputer tertentu, untuk prinsip utama kita mendiskusikan jaringan
komputer dan protokolnya. Tapi apa itu Internet? Ada beberapa cara untuk
menjawab pertanyaan ini. Pertama, kita dapat menggambarkan mur dan
baut Internet, yaitu dasar komponen perangkat keras dan perangkat lunak
yang membentuk Internet. Kedua, kita bisa menggambarkan Internet di
syarat infrastruktur jaringan yang menyediakan layanan untuk aplikasi
terdistribusi.
1. Deskripsi Mur dan Baut
Sistem akhir dihubungkan oleh jaringan tautan komunikasi dan
sakelar paket. Jenis tautan komunikasi, yang terdiri dari berbagai
2
jenis media fisik, termasuk kabel koaksial, kawat tembaga, serat optik,
dan spektrum radio. Tautan yang berbeda dapat mengirimkan data
pada kecepatan yang berbeda, dengan laju pengiriman tautan yang
diukur bit / detik. Ketika satu sistem ujung memiliki data untuk
dikirim ke sistem ujung lain, sistem akhir mengirim segmen data dan
menambahkan byte header ke setiap segmen. Paket informasi yang
dihasilkan, dikenal sebagai paket dalam jargon jaringan komputer,
kemudian dikirim melalui jaringan Internet dengan tujuan sistem
akhir, di mana mereka dipasang kembali ke dalam data asli.
Sistem akhir, sakelar paket, dan bagian lain dari Internet protokol
yang mengontrol pengiriman dan menerima informasi dalam
Internet. Transmission Control Protocol (TCP) dan Internet Protocol
(IP) yaitu dua protokol paling penting di Internet. Protokol IP
menentukan format paket yang dikirim dan diterima di antara router
dan sistem akhir. Internet protokol utama secara kolektif dikenal
sebagai TCP / IP.
2. Deskripsi Services (Layanan)
Internet juga sebagai infrastruktur yang menyediakan layanan ke
aplikasi. Selain aplikasi tradisional seperti e-mail dan penjelajahan
Web, aplikasi internet termasuk aplikasi smartphone dan tablet,
termasuk perpesanan Internet, pemetaan dengan informasi lalu lintas
dalam waktu nyata, streaming musik dari cloud, streaming film dan
televisi, jejaring sosial online, konferensi video, game multi-player,
dan rekomendasi berbasis lokasi sistem. Aplikasi tersebut dikatakan
aplikasi terdistribusi, sebab melibatkan banyak ujung sistem yang
saling bertukar data. Yang penting, aplikasi Internet pada sistem akhir
tidak berjalan di switch paket dalam inti jaringan. Meskipun packet
switch memfasilitasi pertukaran data antara sistem akhir, tidak peduli
dengan aplikasi yang merupakan sumber atau tenggelamnya data.
Sistem akhir yang terhubung ke Internet menyediakan antarmuka
soket yang menentukan bagaimana suatu program berjalan pada satu
sistem akhir yang meminta infrastruktur Internet untuk mengirimkan
data ke tujuan tertentu pada program yang berjalan pada sistem ujung
yang lain. Antarmuka soket Internet ini yaitu seperangkat aturan
yang dikirim oleh program harus mengikuti sehingga Internet dapat
mengirimkan data ke program tujuan. Internet memiliki antarmuka
3
soket yang harus diikuti program untuk mengirim data agar Internet
mengirimkan data ke program yang akan menerima data.
3. Apa itu Protokol?
› Analogi Manusia
Untuk mudah memahami gagasan protokol jaringan komputer,
terlebih dahulu kita mempertimbangkan beberapa analogi
manusia, sebab kita manusia mengeksekusi protokol sepanjang
waktu. Protokol manusia menyatakan bahwa seseorang pertama
kali menawarkan salam “Hai” untuk memulai komunikasi dengan
orang lain. Secara implisit, seseorang kemudian mengambil
respon “Hai” dengan ramah sebagai indikasi bahwa seseorang
dapat melanjutkan dan bekromunikasi. Hal yang sama berlaku di
jaringan dibutuhkan dua (atau lebih) entitas berkomunikasi yang
menjalankan protokol yang sama untuk menyelesaikan tugas.
› Protokol Jaringan
Protokol jaringan mirip dengan protokol manusia, kecuali bahwa
entitas yang bertukar pesan dan mengambil tindakan yaitu
komponen perangkat keras atau perangkat lunak dari beberapa
perangkat (misalnya, komputer, smartphone, tablet, router, atau
perangkat yang mendukung jaringan lainnya). Semua aktivitas di
internet itu melibatkan dua atau lebih banyak entitas remote yang
berkomunikasi diatur oleh protokol.
B. Tepi Jaringan
Kita mulai di bagian ini pada tepi jaringan dan melihat komponen yang
paling sering kita jumpai yaitu, komputer, smartphone, dan perangkat lain
yang kita gunakan setiap hari. Komputer dan perangkat lainnya tersebut
terhubung ke Internet sering disebut sebagai sistem akhir sebab mereka
duduk di tepi Internet. Sistem akhir juga disebut sebagai host sebab
mereka meng-host (yaitu, menjalankan) program aplikasi.
1. Mengakses Jaringan
Saat ini, dua jenis akses broadband perumahan yang paling umum
yaitu Digital Subscriber Line (DSL) dan kabel. perumahan
4
biasanya memperoleh akses Internet DSL dari perusahaan telepon
lokal yang sama (Telco) yang menyediakan akses telepon lokal. Jadi,
ketika DSL digunakan, telekomunikasi pelanggan juga miliknya ISP.
Modem DSL setiap pelanggan memakai saluran telepon yang ada
untuk bertukar data dengan digital subscriber line access multiplexer
(DSLAM) yang terletak di kantor pusat lokal Telco. Modem DSL
rumah mengambil data digital dan menerjemahkannya ke nada
frekuensi tinggi untuk pengiriman melalui kabel telepon ke kantor
pusat. Sinyal analog dari banyak rumah semacam itu diterjemahkan
kembali ke dalam format digital di DSLAM.
2. Media Fisik
Saat mengirim dari sumber ke tujuan, melewati serangkaian pasangan
transmitter-receiver. Untuk setiap pasangan transmitter-receiver, bit
dikirim dengan menyebarkan gelombang elektromagnetik atau pulsa
optik yang melintasi media fisik. Contoh media fisik termasuk twisted-
pair kawat tembaga, kabel koaksial, kabel serat optik multimode,
spektrum radio terestrial, dan radio satelit spektrum.
Media fisik terbagi dalam dua kategori: guided media dan
unguided media. Dengan guided media, gelombang dipandu
sepanjang media padat, seperti kabel serat optik, kawat tembaga
twisted-pair, atau kabel koaksial. Dan unguided media, gelombang
merambat di atmosfer dan di luar ruang, seperti dalam LAN nirkabel
atau saluran satelit digital.
C. Inti jaringan
1. Paket Switching
Dalam aplikasi jaringan, sistem akhir menukar pesan satu sama lain.
Pesan dapat berisi apa pun yang diinginkan oleh perancang aplikasi.
Untuk mengirim pesan dari sistem ujung sumber ke sistem akhir
tujuan, sumber memecah pesan panjang menjadi potongan data kecil
yang dikenal sebagai paket. Antara sumber dan tujuan, setiap paket
melakukan perjalanan melalui tautan komunikasi dan sakelar paket
(dua jenis yang utama yaitu; router dan link-layer switch). Paket
ditransmisikan setiap tautan komunikasi dengan kecepatan yang
sama dengan laju transmisi penuh dari tautan tersebut.
5
2. Circuit Switching
Ada dua pendekatan mendasar untuk memindahkan data melalui
tautan jaringan dan sakelar: Sircuit Switching dan Packet Switching.
Dalam jaringan circuit-switched, sumber daya dibutuhkan sepanjang
jalur (buffer, link transmission rate) untuk menyediakan komunikasi
antara sistem akhir yang dicadangkan untuk durasi sesi komunikasi
antara sistem akhir. Dalam jaringan packet-switched, sumber daya
ini tidak dicadangkan; Sebuah pesan sesi memakai sumber
daya sesuai permintaan dan sebagai konsekuensinya, mungkin harus
menunggu (yaitu, antrian) untuk akses ke tautan komunikasi.
3. A Network Of Network
Kita melihat sebelumnya bahwa sistem akhir (PC, smartphone, server
Web, server mail, dan sebagainya) terhubung ke Internet melalui akses
ISP. Akses ISP dapat menyediakan konektivitas kabel atau nirkabel,
memakai berbagai akses teknologi termasuk DSL, kabel, FTTH,
Wi-Fi, dan seluler. Satu pendekatan naif yaitu memiliki setiap akses
ISP secara langsung terhubung dengan setiap akses ISP lainnya.
Desain mesh seperti itu, tentu saja, terlalu mahal untuk itu akses ISP,
sebab akan memerlukan setiap akses ISP untuk memiliki tautan
komunikasi terpisah untuk masing-masing ratusan ribu ISP akses
lainnya di seluruh dunia.
D. Keterlambatan, Kehilangan, dan Throughput dalam
Packet-Switched Networks
1. Gambaran Umum Keterlambatan dalam Jaringan Packet-Switched
Suatu paket dimulai pada sebuah host (sumber), melewati serangkaian
router, dan mengakhiri perjalanan di host lain (tujuan). Perjalanan
paket dari satu node (host atau router) ke node berikutnya (host atau
router) di sepanjang jalur ini, paket tersebut mengalami beberapa
jenis keterlambatan di masing-masing node di sepanjang jalan.
2. Keterlambatan Antrian dan Kehilangan Paket
Antrian memiliki kapasitas yang terbatas, meskipun kapasitas
antriannya sangat besar tergantung pada desain dan biaya router.
sebab kapasitas antrian terbatas, penundaan paket tidak terlalu
6
mendekati tak terhingga ketika intensitas lalu lintas mendekati 1.
Sebagai gantinya, sebuah paket dapat tiba untuk menemukan antrian
penuh. Dengan tidak ada tempat untuk menyimpan paket tersebut,
router akan melakukannya penurunan paket itu; artinya, paket itu
akan hilang.
3. Keterlambatan Ujung ke Ujung (End to End Delay)
Untuk memahami konsep ini, anggaplah ada yaitu router N-1
antara host sumber dan host tujuan. kita anggap saja untuk saat ini
bahwa jaringan tidak kebobolan (sehingga penundaan antrian dapat
diabaikan), penundaan pemrosesan di masing-masing router dan pada
host sumber yaitu dproc, laju transmisi keluar dari masing-masing
router dan keluar dari host sumber yaitu R bit / detik, dan propagasi
pada setiap tautan yaitu dproc. Penundaan nodal terakumulasi dan
memberikan end-to-end delay.
dend−end=N(dproc+dtrans+dprop)
Di mana sekali lagi dtrans=L/R, di mana L yaitu ukuran paket.
4. Hasil Dalam Jaringan Komputer
Selain penundaan dan kehilangan paket, ukuran kinerja penting
lainnya dalam jaringan komputer yaitu end-to-end throughput.
Untuk beberapa aplikasi, seperti Internet telepon, diharapkan untuk
memiliki penundaan yang rendah dan throughput instan secara
konsisten di atas beberapa ambang batas (misalnya, lebih dari 24 kbps
untuk beberapa aplikasi telepon Internet dan lebih dari 256 kbps untuk
beberapa aplikasi video waktu nyata). Untuk aplikasi lain, termasuk
yang melibatkan transfer file, diharapkan untuk memiliki throughput
setinggi mungkin.
E. Lapisan Protokol dan Model Layanannya
• Arsitektur Layer
a. Layering Protocol
Untuk memberikan struktur kepada desain protokol jaringan,
perancang jaringan mengatur protokol perangkat keras jaringan
dan perangkat lunak yang mengimplementasikan protokol dalam
lapisan.
7
b. Aplication Layer
Lapisan aplikasi yaitu tempat aplikasi jaringan dan protokol
lapisan aplikasi berada. Lapisan aplikasi Internet mencakup
banyak protokol, seperti protokol HTTP (yang menyediakan
untuk permintaan dokumen web dan transfer), SMTP (yang
menyediakan untuk transfer pesan email), dan FTP (yang
menyediakan untuk transfer file antara dua sistem akhir).
c. Transport Layer
Lapisan transport Internet mengangkut pesan layer aplikasi antara
aplikasi end-point. Di Internet ada dua protokol transport, TCP
dan UDP, yang keduanya dapat mengangkut pesan layer aplikasi.
TCP menyediakan koneksi-layanan yang berorientasi pada
aplikasinya. Layanan ini termasuk jaminan pengiriman pesan
lapisan aplikasi ke tujuan dan kontrol aliran (yaitu,pencocokan
kecepatan pengirim / penerima). TCP juga memecah pesan
panjang menjadi segmen yang lebih pendek dan menyediakan
mekanisme kontrol kemacetan, sehingga sumber menahan
laju transmisinya ketika jaringan sedang padat. Protokol UDP
menyediakan layanan tanpa koneksi ke aplikasinya. Ini tanpa
embel-embel layanan yang tidak menyediakan keandalan, kontrol
aliran, dan kontrol kemacetan.
d. Network Layer
Lapisan jaringan Internet bertanggung jawab untuk memindahkan
paket lapisan jaringan yang dikenal sebagai datagram dari
satu host ke yang lain. Protokol lapisan transport Internet
(TCP atau UDP) di host sumber melewati segmen transport-
layer dan alamat tujuan ke lapisan jaringan. Lapisan jaringan
kemudian menyediakan layanan mengirimkan segmen ke lapisan
transportasi di host tujuan. Lapisan jaringan Internet termasuk
protokol IP, yang mendefinisikan bidang dalam datagram serta
bagaimana sistem akhir dan router bekerja pada bidang ini.
Hanya ada satu protokol IP, dan semuan Komponen internet yang
memiliki lapisan jaringan harus menjalankan protokol IP. Lapisan
jaringan Internet juga berisi protokol perutean yang menentukan
rute yang diambil datagram antara sumber dan tujuan.
8
e. Link-Layer
Lapisan jaringan Internet merutekan datagram melalui serangkaian
router antara sumber dan tujuan. Untuk memindahkan paket
dari satu node (host atau router) ke node berikutnya dalam rut,
jaringan layer bergantung pada layanan dari layer tautan. Secara
khusus, pada setiap node, lapisan jaringan melewati datagram
ke lapisan tautan, yang mengirimkan datagram ke simpul
berikutnya di sepanjang rute. Pada node berikutnya, lapisan
tautan meneruskan datagram ke lapisan jaringan. Layanan yang
diberikan oleh lapisan tautan bergantung pada protokol lapisan
tautan khusus yang digunakan tautannya.
f. Lapisan fisik
Sedangkan tugas dari layer link yaitu memindahkan seluruh
frame dari satu elemen jaringan ke elemen jaringan yang
berdekatan, tugas dari lapisan fisik yaitu untuk memindahkan
bit individu dalam bingkai dari satu node ke node berikutnya.
Protokol dalam lapisan ini sekali lagi bergantung pada tautan dan
selanjutnya bergantung pada transmisi yang sebenarnya media
tautan (misalnya, kawat tembaga twisted-pair, serat optik mode
tunggal).
g. Model OSI
Model OSI terbentuk ketika protokol yang akan menjadi protokol
Internet yang masih baru, dan hanyalah salah satu dari banyak
suite protokol yang berbeda dalam pengembangan. Tujuh lapisan
model referensi OSI yaitu : lapisan aplikasi, lapisan presentasi,
lapisan sesi, lapisan transportasi, lapisan jaringan, lapisan tautan
data, dan lapisan fisik.
9BAB 2
APPLICATION LAYER
Lapisan aplikasi yaitu suatu teknologi yang digunakan untuk mengelompokkan protokol dan metode dalam model arsitektur
jaringan komputer. Baik model OSI maupun TCP/IP memiliki suatu
lapisan aplikasi. Singkatnya, application layer merupakan lapisan OSI Layer
yang menyediakan interface atau antar muka antar aplikasi yang digunakan
untuk melakukan komunikasi di dalam jaringan, dan kemudian membantu
mengerimkan dan menerima pesan yang dikirimkan di dalam jaringan
tersebut. Ini juga di namakan protokol jaringan yang mengatur tugas-tugas
tertentu dalam suatu jaringan internet. Aplikasi internet termasuk aplikasi
berbasis teks klasik yang menjadi populer di tahun 1970-an.
Selama periode saat ini semakin berkembang, kita telah melihat
munculnya generasi baru aplikasi jejaring sosial-seperti Facebook,
Instagram, Twitter, dan WeChat sehingga kita bisa terhubung satu sama
lain.
Agar dapat mencapai tujuan yang sama, setiap bagian dari jaringan
komputer meminta dan memberikan layanan (service). Pihak yang
meminta layanan disebut klien (client) dan yang memberikan layanan
disebut pelayan (server). Arsitektur ini disebut dengan sistem client-server,
dan digunakan pada hampir seluruh aplikasi jaringan komputer.
10
A. Prinsip Jaringan Aplikasi
1. Arsitektur Jaringan Aplikasi
Gambar 2.1 Arsitektur Jaringan Aplikasi
Arsitektur jaringan komputer merupakan tata cara penggunaan
perangkat keras dan perangkat lunak dalam jaringan agar satu
komputer dengan komputer lainnya dapat melakukan komunikasi
dan pertukaran data.
Keamanan sistem jaringan komputer yaitu bagian tak
terpisahkan dari keamanan sistem komputer sebuah organisasi secara
keseluruhan, terutama dengan semakin berkembangnya Internet.
Semakin banyak aplikasi pengguna yang berbasiskan pada jaringan
komputer. Jika sebuah jaringan komputer tidak aman, maka sistem
komputer pada organisasi tersebut juga tidak aman.
Dalam arsitektur klien-server, selalu ada host, yang disebut server,
yang diminta oleh layanan dari banyak host lain, yang disebut klien.
Karakteristik lain dari Arsitektur klien-server yaitu bahwa server
memiliki alamat tetap yang terkenal, yang disebut alamat IP (yang akan
segera kita diskusikan). sebab server memiliki alamat tetap, terkenal,
dan sebab server selalu aktif, klien selalu dapat menghubungi server
dengan mengirimkan paket ke alamat IP server.
APPLICATION LAYER 11
Arsitektur sistem P2P Peer-to-peer sering menerapkan sistem
jaringan overlay abstrak, dibangun di Application Layer, di atas topologi
jaringan asli atau fisik. Lapisan tersebut digunakan untuk penemuan
pengindeksan dan peer dan membuat sistem P2P independen dari
topologi jaringan fisik. Konten biasanya dipertukarkan langsung
melalui jaringan Internet Protocol yang mendasari (IP). Pada jaringan
peer-to-peer terstruktur, kadang-kadang, sumber daya diatur dengan
kriteria dan algoritma khusus, yang menyebabkan lapisan dengan
topologi lebih spesifik.
Gambar 2.2 Client Server dan Peer to Peer Arsitektur
2. Proses Berkomunikasi
Sebelum membangun aplikasi jaringan, Anda juga memerlukan
pemahaman dasar tentang program, supaya berjalan baik dalam
mengaplikasikan jaringan, berkomunikasi satu sama lain dalam
perangkat jaringan supaya nyambung dan paham jalanya program
seperti apa dalam jaringan sistem operasi. Sebuah proses dapat
dianggap sebagai sebuah program yang berjalan dalam sistem akhir,
ketika proses berjalan pada sistem akhir yang sama, mereka dapat
berkomunikasi satu sama lain dengan komunikasi antarproses,
memakai aturan yang diatur oleh sistem operasi.
› Proses Client dan Server
Client yaitu sebuah sistem atau proses yang melakukan
permintaan data atau layanan ke server. Sedangkan server ialah,
12
sistem atau proses yang menyediakan data atau layanan yang
diminta oleh client. Cara kerja jaringan client dan server yaitu
komputer yang bertindak sebagai client akan meminta data dari
komputer server dan komputer server akan melayani permintaan
data dari komputer client, client dan server terhubung pada suatu
jaringan komputer. Untuk spesifikasi komputer, komputer server
memiliki spesifikasi yang lebih tinggi daripada komputer client.
› Proses Pengalamatan
Seperti contoh untuk mengirim surat pos ke tujuan tertentu,
tujuan perlu memiliki alamat. Demikian pula agar proses yang
berjalan pada satu host untuk mengirim paket tujuan yang
berjalan di lain host, tujuan penerimaan harus memiliki alamat
dengan jelas. Untuk mengidentifikasi proses penerimaan, dua
lembar informasi perlu ditentukan: (1) alamat host dan (2)
pengidentifikasi yang menentukan proses penerimaan di host
tujuan.
3. Layanan Transportasi Tersedia untuk Aplikasi
Ingatlah bahwa soket yaitu antarmuka antara proses aplikasi dan
protokol transport-layer. Aplikasi di sisi pengiriman mendorong
pesan melalui soket. Di sisi lain protokol transport-layer memiliki
tanggung jawab mendapatkan pesan ke soket proses penerimaan.
Protokol yaitu bagian yang penting dalam proses pertukaran
informasi antar komputer yang mengatur proses pertukaran data
antar komputer. Teknologi protokol dapat diterapkan pada perangkat
lunak, perangkat keras atau kombinasi dari keduanya. Protokol sangat
berhubungan dengan teknologi informasi dan tidak bisa lepas dari
aktivitas di internet.
Sebagai contoh, seperti orang yang mengirimkan email. Email
dalam komputer bisa disebut dengan sebuah data. Sehingga email
yang dikirimkan pada seseorang dari komputer satu ke komputer
lain sebenarnya yaitu pengiriman data. Setiap orang mengirimkan
email, pasti email akan melewati beberapa protokol. Semua protokol
harus dilalui agar email bisa keluar dan diterima komputer lain pada
jaringan yang sama atau berbeda.
Bandwidth yaitu ukuran dari banyaknya informasi yang dapat
dialirkan dari source ke destination dalam waktu tertentu. Bandwidth
APPLICATION LAYER 13
dapat dipakai untuk mengukur aliran data analog atau aliran data
digital. Secara umum pelangan internet, informasi yang digunakna
yaitu jenis data digital. Satuan yang digunakan untuk bandwdth
digital yaitu bps (bit per second).
Throughput yaitu bandwidth yang aktual atau sebenarnya,
yang diukur dengan satuan waktu tertentu dan pada kondisi jaringan
tertentu yang digunakan untuk melakukan transfer data dengan
ukuran tertentu pula.
Keamanan jaringan atau yang biasa disebut sebagai Network
Security biasanya dilakukan untuk mencegah dan memantau akses
yang tidak sah, penyalahgunaan, modifikasi, dan lain-lain. Dimana
tindakan pencegahan untuk melindungi jaringan tersebut merupakan
tugas dari seorang administrator jaringan.
4. Layanan transportasi yang disediakan oleh Internet
Ketika sebuah komputer dikoneksikan dengan komputer lainnya,
mereka akan berkomunikasi lewat protokol. Protokol yang paling
terkenal yaitu protokol TCP/IP (Transmission Control Protocol/
Internet Protocol). Pengertian TCP/IP tak bisa lepas dari fakta bahwa
ada dua jenis protokol yang digunakan pada jaringan ini, yaitu protokol
TCP dan protokol IP. TCP/IP yaitu suatu standar komunikasi yang
dapat digunakan untuk bertukar data antar komputer oleh suatu
komunitas yang tergabung melalui jaringan internet.
Dari pengertian TCP/IP tadi bisa kita pahami bahwa :
• Ada lebih dari 1 komputer yang tergabung dan berkomunikasi
memakai TCP/IP.
• Komputer yang terkoneksi melalui protokol TCP/IP melakukan
sharing data.
• Komputer yang terkoneksi TCP/IP juga berarti terkoneksi dengan
“internet”.
UDP yaitu jenis protokol internet yang memungkinkan
sebuah perangkat lunak pada komputer bisa mengirimkan pesan
ke komputer lain melalui jaringan tanpa perlu ada komunikasi
awal. Karakteristik UDP merupakan jenis protokol yang memiliki
karakteristik connectionless atau tidak berbasis koneksi. Aplikasi
UDP yaitu SunRPC, SNMP, DNS, dan TFTP. Lalu contoh aplikasi
14
untuk TCP antara lain FTP, SMTP, dan TELNET. Jenis Port yang
Digunakan UDP memakai port 16 bit integer yang dibagi
menjadi tiga bagian, yakni 49152-65535 untuk ephemeral port, port
1-1023 untuk well-known port, dan port 1024-49151 untuk registered
port. Proses transmisi data UDP dilakukan dalam bentuk datagram
yang memungkinkan data yang diterima bisa mengalami kerusakan
dan tidak urut. Berbeda dengan UDP, TCP memiliki dua jalur yang
digunakan untuk melakukan pertukaran data yang masuk dan keluar.
5. Protokol aplikasi-Layer
Contoh Protokol-Protokol di Aplication Layer pada Lapisan OSI
a. DHCP (Dynamic Host Configuration Protocol)
b. Domain Name System (DNS)
c. HTTP (Hypertext Transfer Protocol http)
d. FTP (File Transfer Protocol)
e. Telnet
f. Simple Mail Transfer Protocol (SMTP)
g. Simple Network Management Protocol (SNMP)
h. Network File System (NFS)
B. Web dan HTTP
Hypertext Transfer Protocol (HTTP) yaitu sebuah protokol jaringan
lapisan aplikasi yang digunakan untuk sistem informasi terdistribusi,
kolaboratif, dan memakai hipermedia. Penggunaannya memakai
sumber daya yang saling terhubung dengan tautan, yang disebut
dengan dokumen hiperteks, yang kemudian membentuk World Wide
Web pada tahun 1990 oleh fisikawan Inggris, Tim Berners-Lee. Hingga
kini, ada dua versi mayor dari protokol HTTP, yakni HTTP/1.0 yang
memakai koneksi terpisah untuk setiap dokumen, dan HTTP/1.1
yang dapat memakai koneksi bersama untuk melakukan transaksi.
Dengan demikian, HTTP/1.1 bisa lebih cepat sebab memang tidak usah
membuang waktu untuk pembuatan koneksi berulang-ulang.
Pengertian URL (uniform resource locator) yaitu rangkaian
karakter menurut suatu format standar tertentu, yang digunakan untuk
menunjukkan alamat suatu sumber seperti dokumen dan gambar di
APPLICATION LAYER 15
Internet. URL pertama kali diciptakan oleh Tim Berners-Lee pada tahun
1991 agar penulis-penulis dokumen dokumen dapat mereferensikan
pranala ke World Wide Web. Sejak 1994, konsep URL telah dikembangkan
menjadi istilah Uniform Resource Identifier (URI) yang lebih umum
sifatnya.
1. Gambaran HTTP
HyperText Transfer Protocol (HTTP) pada Web Application-layer
Protocol, yaitu inti dari Web. Hal ini didefinisikan dalam [RFC 1945]
dan [RFC 2616]. HTTP diimplementasikan dalam dua program: klien
program dan program server. Program klien dan server program,
mengeksekusi pada akhir yang berbeda berbicara satu sama lain
dengan bertukar pesan HTTP.
Sebuah halaman web (juga disebut dokumen) terdiri dari objek.
Sebuah objek hanyalah sebuah file seperti sebuah HTML file, gambar
JPEG, applet Java, atau klip video yang dapat diakses oleh satu URL.
Kebanyakan web Halaman terdiri dari file HTML dasar dan beberapa
objek yang direferensikan. Misalnya, jika halaman web berisi teks
HTML dan lima gambar JPEG, maka halaman web memiliki enam
objek: file HTML dasar ditambah lima gambar. File HTML dasar
merujuk pada objek lain di halaman dengan URL objek. Setiap URL
memiliki dua komponen: nama host server yang memiliki objek dan
jalur objek Nama. Sebagai contoh, URL (http://www.someschool.edu/
someDepartment/picture.gif). memiliki www.someSchool.edu untuk
hostname dan/someDepartment/picture.gif untuk jalur Nama. sebab
web browser (seperti Internet Explorer dan Firefox) menerapkan sisi
klien HTTP dalam konteks web, kita akan memakai kata browser
dan klien secara bergantian. Web Server, yang mengimplementasikan
sisi server HTTP, masing-masing dialamatkan oleh URL.
16
Gambar 2.3 http Protocol
HTTP memiliki fungsi koneksi persisten yang memungkinkan
saluran tetap terbuka alih-alih ditutup setelah pertukaran data
yang diminta. TCP memulai koneksi setelah konfirmasi dari kedua
ujungnya bahwa mereka tersedia dan terbuka untuk pertukaran data.
Dalam koneksi non-persisten, saluran akan ditutup ketika satu host
memberi sinyal bahwa ia ingin mengakhiri komunikasi atau ketika
sejumlah waktu telah berlalu tanpa pertukaran data. Untuk menjaga
koneksi yang persisten, paket TCP keep-live dikirim untuk mencegah
koneksi dari waktu habis.
Sebuah HTTP “klien” yaitu sebuah aplikasi (browser Web atau
klien lainnya), dengan mengirimkan permintaan untuk terhubung
ke server untuk mencapai satu atau lebih dari tujuan HTTP server.
Sebuah HTTP “server” juga merupakan aplikasi (biasanya layanan
Web, seperti Apache Web Server atau server IIS, dll), dengan menerima
permintaan klien dan mengirim data respon HTTP.
2. Format Pesan HTTP
Di bawah ini pesan permintaan HTTP:
APPLICATION LAYER 17
Gambar 2.4 Pesan Permintaan HTTP
Respon HTTP khas pesan
Gambar 2.5 Response HTTP
Pertama Telnet ke server web favorit Anda. Kemudian ketik pesan
permintaan satu baris untuk beberapa objek yang disimpan di server.
Sebagai contoh, jika Anda memiliki command prompt, ketik:
Gambar 2.6 Telnet ke Server
3. Interaksi Pengguna-Server: Cookies
Server HTTP tidak memiliki kewarganegaraan, sehingga ini
menyederhanakan desain server web yang kinerjanya tinggi yang
dapat menangani ribuan TCP secara bersamaan koneksi. Sering kali
situs web diinginkan untuk mengidentifikasi pengguna, baik sebab
server ingin membatasi akses pengguna atau sebab ingin menyajikan
konten sebagai identitas utama pengguna. Untuk tujuan ini, HTTP
18
memakai cookie. Cookie didefinisikan dalam [RFC 6265],
memungkinkan situs untuk melacak pengguna.
Gambar 2.7 Teknologi Cookie
Teknologi cookie memiliki empat komponen: (1) baris header
cookie di HTTP pesan tanggapan; (2) baris header cookie di pesan
permintaan HTTP; (3) file cookie disimpan di sistem akhir pengguna
dan dikelola oleh browser pengguna; dan (4) database back-end di
situs Web.
Gambar 2.8 Komponen Teknologi Cookie
APPLICATION LAYER 19
4. Web Caching
Cache yaitu proses penyimpanan sementara data atau halaman
HTML dan gambar sebuah website untuk mengurangi penggunaan
bandwidth dan loading server. Secara sederhana, cache yaitu
teknologi yang membantu menampilkan halaman website lebih cepat.
Berbeda dengan cookies yang merekam jejak dan aktivitas pengguna
ketika berselancar di internet. Proses permintaan data sebelumnya
yang sudah di cari maka akan tersimpan dalam server dan tidak usah
reques lagi ke internet dalam lebih cepat dalam mengirim data.
C. Pesan Elektronik dan Internet
1. SMTP
Simple Mail Transfer Protocol atau SMTP yaitu suatu protokol
untuk berkomunikasi dengan server guna mengirimkan email dari
lokal email ke server, sebelum akhirnya dikirimkan ke server email
penerima. Proses ini dikontrol dengan Mail Transfer Agent (MTA)
yang ada dalam server email Anda.
Gambar 2.9 SMTP
Selanjutnya Mari kita lihat contoh transkrip pesan yang
dipertukarkan antara klien SMTP (C) dan server SMTP. Nama host
klien yaitu crepes.fr dan nama host server hamburger.edu. Garis teks
ASCII diawali dengan C: persis dengan baris yang dikirim klien ke
Soket TCP, dan garis teks ASCII diawali dengan S: persis baris server
mengirimkan ke Soket TCP. Transkrip berikut dimulai segera setelah
sambungan TCP dibuat.
20
Gambar 2.10 Contoh Transkip Pesan Klien SMTP
Perbedaan kedua, yang kita singgung sebelumnya, yaitu bahwa
SMTP memerlukan setiap pesan, termasuk pesan untuk berada dalam
format ASCII 7-bit. Jika pesan berisi karakter yang tidak 7-bit ASCII
(misalnya, karakter Perancis dengan aksen) atau berisi data biner
(seperti file gambar), maka pesan harus dikodekan ke dalam ASCII
7-bit. HTTP data.
2. Format pesan email.
Jika Anda belum memiliki alamat email, Anda harus mendaftar di
penyedia layanan email sebelum melanjutkan. Untungnya, banyak
layanan email berbasis web gratis yang memungkinkan Anda
mendapat alamat email tanpa mengeluarkan uang. Beberapa layanan
email web paling populer di antaranya Gmail.
Header pesan tipikal terlihat seperti ini:
Gambar 2.11 Format Pesan SMTP
APPLICATION LAYER 21
3. Protokol Akses Surat
› POP3
POP3 (Post Office Protocol version 3) digunakan untuk
berkomunikasi dengan server email remote dan men-download
semua email ke dalam aplikasi email client seperti Outlook,
Thunderbird, Windows Mail, Mac Mail, dll. Biasanya, aplikasi
email client memiliki opsi untuk meninggalkan salinan email
yang telah di download tetap berada di server atau tidak. Jika Anda
mengakses akun email yang sama dari perangkat yang berbeda,
sangat disarankan untuk tetap meninggalkan salinan email di
server. Bila tidak, maka perangkat Anda yang lain tidak akan
bisa men-download email apapun jika perangkat pertama telah
menghapus email-email tersebut dari server (melalui fitur POP3).
Kita bisa juga menyebut POP3 ini sebagai protokol komunikasi
1 arah, artinya data akan ditarik dari server remote dan dikirim
langsung ke client. Fase otorisasi memiliki dua perintah utama:
user <username> dan Pass <password>. Untuk mengilustrasikan
kedua perintah ini, kami menyarankan bahwa Telnet langsung ke
POP3 server, memakai Port 110, dan mengeluarkan perintah
ini. Misalkan mailServer yaitu nama server email.
Gambar 2.12 Implementasi POP3
› IMAP
IMAP (Internet Message Access Protocol) seperti POP3 juga
digunakan untuk mengambil email ke aplikasi email client,
namun, IMAP memiliki perbedaan yang cukup besar – sebab
hanya informasi header email saja yang akan di-download,
sedangkan email yang asli tetap akan ditinggalkan di server. Ini
berbeda dengan POP3 yang justru memindahkan semua email
ke aplikasi email client dan tidak menyisakan email di server.
IMAP tergolong sebagai protokol komunikasi 2 arah, sebab
22
perubahan yang dibuat di aplikasi email client akan dikirimkan
juga ke server. Sehingga pada akhirnya, protokol ini menjadi lebih
populer sebab penyedia layanan email seperti GMail, dll, justru
merekomendasikan untuk memakai IMAP daripada POP3.
Port default IMAP yaitu :
• Port 143 – port tidak terenkripsi (non-encrypted)
• Port 993 – port SSL/TLS, yang juga dikenal sebagai IMAPS
D. DNS – Layanan Direktori Internet
Domain Name System atau DNS yaitu sebuah sistem yang memungkinkan
manusia dan komputer untuk berkomunikasi secara lebih mudah.
Manusia memakai nama, komputer memakai angka, dan DNS
berada di antara mereka untuk menyesuaikan nama dengan angka dalam
daftar tertentu. Kita bisa mengambil contoh aplikasi Kontak pada ponsel
pintar atau smartphone. Cara kerja DNS meliputi beberapa langkah dan
melalui struktur DNS. Langkah pertama dimulai dengan sebuah DNS
query, sebuah permintaan informasi. Awalnya, server DNS akan mencari
informasi di dalam filehost sebuah file plain text dari sistem operasi yang
bertanggung jawab atas pemetaan hostname ke alamat IP. Jika tidak ada
informasi yang ditemukan, server akan mencari cache sebuah komponen
hardware atau software yang menyimpan data untuk sementara.
• Caching DNS
DNS Cache atau kadang bisa juga disebut DNS Resolver Cache
merupakan database sementara pada sistem operasi komputer yang
menyimpan rekaman data IP dari nama domain yang sebelumnya
telah dikunjungi oleh pengguna komputer.
APPLICATION LAYER 23
Gambar 2.13 Ilustrasi Caching DNS
E. Distribusi File Peer-to-Peer
Aplikasi P2P yang sangat alami, yaitu mendistribusikan file besar ke
sejumlah besar host (disebut rekan). Dalam distribusi file klien-server,
server harus mengirim salinan file ke masing-masing rekan – menempatkan
beban yang sangat besar pada server dan menghabiskan banyak bandwidth
server. Dalam distribusi file P2P, setiap rekan dapat mendistribusikan
kembali bagian mana pun dari file yang telah diterimanya kepada yang
lain rekan kerja, sehingga membantu server dalam proses distribusi.
Gambar 2.14 Ilustrasi Distribusi File Peer to Peer
24
25
BAB 3
LAPISAN TRANSPORT
Berada di antara lapisan aplikasi dan jaringan, lapisan transport yaitu bagian utama dari arsitektur jaringan berlapis. Ini memiliki peran
penting dalam menyediakan layanan komunikasi langsung ke proses
aplikasi yang berjalan pada host yang berbeda. Penekanan khusus akan
diberikan pada protokol Internet, khususnya protokol transport-layer TCP
dan UDP.
A. Pengantar dan Layanan Lapisan Transport
Protokol transport-layer menyediakan komunikasi logis antara proses
aplikasi yang berjalan pada host. Dengan komunikasi logis, maksud kita
yaitu dari perspektif aplikasi, seolah-olah host yang menjalankan proses
terhubung langsung; pada kenyataannya, host mungkin berada di sisi
berlawanan, terhubung melalui banyak router dan berbagai jenis tautan.
Proses aplikasi memakai komunikasi logis yang disediakan oleh
lapisan transportasi untuk saling mengirim pesan, bebas dari kekhawatiran
akan detail infrastruktur fisik yang digunakan untuk membawa pesan-
pesan ini.
26
1. Hubungan Antara Transportasi dan Lapisan Jaringan
Gambar 3.1 Relasi Transportasi dan Lapisan Jaringan
Lapisan transport terletak tepat di atas lapisan jaringan dalam
tumpukan protokol. Sedangkan protokol transport-layer menyediakan
komunikasi logis antara proses berjalan pada host yang berbeda,
protokol lapisan jaringan menyediakan komunikasi logis antar host.
Perbedaan ini halus tetapi penting. Layanan POS memindahkan surat
dari rumah ke rumah, bukan dari orang ke orang.
Protokol transport-layer hidup di sistem akhir. Dalam sistem
akhir, protokol transport memindahkan pesan dari proses aplikasi
ke tepi jaringan (yaitu, lapisan jaringan) dan sebaliknya, tetapi tidak
ada yang mengatakan tentang bagaimana pesan dipindahkan dalam
inti jaringan. Bahkan, router perantara tidak bekerja, atau mengenali,
informasi apa pun yang mungkin ditambahkan oleh layer transport
ke pesan aplikasi.
Namun demikian, layanan tertentu dapat ditawarkan oleh protokol
transportasi bahkan ketika protokol jaringan yang mendasarinya
tidak menawarkan layanan yang sesuai pada lapisan jaringan.
Misalnya, seperti yang akan kita lihat di bab ini, protokol transport
LAPISAN TRANSPORT 27
dapat menawarkan layanan transfer data yang dapat diandalkan ke
suatu aplikasi bahkan ketika protokol jaringan yang mendasarinya
tidak dapat diandalkan, bahkan ketika protokol jaringan kehilangan,
kerusakan, atau duplikat paket. Sebagai contoh lain, protokol transport
dapat memakai enkripsi untuk menjamin bahwa pesan aplikasi
tidak dibaca oleh penyusup, bahkan ketika lapisan jaringan tidak
dapat menjamin kerahasiaan segmen lapisan transport.
2. Gambaran Umum tentang Transport Layer di Internet
Ingatlah bahwa Internet membuat dua protokol transport-layer yang
berbeda tersedia untuk lapisan aplikasi. Salah satu protokol ini yaitu
UDP (User Datagram Protocol), yang menyediakan layanan tanpa
koneksi yang tidak dapat diandalkan untuk aplikasi yang memohon.
Protokol kedua yaitu TCP (Transmission Control Protocol), yang
menyediakan layanan yang dapat diandalkan, berorientasi koneksi
ke aplikasi yang memohon. Saat merancang aplikasi jaringan,
pengembang aplikasi harus menentukan salah satu dari dua protokol
transport ini.
Untuk menyederhanakan terminologi, kita merujuk ke paket
transport-layer sebagai segmen. Kita menyebutkan, bagaimanapun,
bahwa literatur Internet (misalnya, RFC) juga mengacu pada paket
transport-layer untuk TCP sebagai segmen tetapi sering merujuk
pada paket untuk UDP sebagai datagram. Tetapi literatur Internet
yang sama ini juga memakai istilah datagram untuk paket lapisan
jaringan.
Setelah melihat sekilas pada model layanan IP, mari sekarang
meringkas model layanan yang disediakan oleh UDP dan TCP.
Tanggung jawab paling mendasar dari UDP dan TCP yaitu untuk
memperluas layanan pengiriman IP antara dua sistem ujung ke
layanan pengiriman antara dua proses yang berjalan pada sistem
akhir. Memperluas pengiriman host-ke-host ke pengiriman proses-
ke-proses disebut transport-layer multiplexing dan demultiplexing.
UDP dan TCP juga menyediakan pemeriksaan integritas dengan
memasukkan bidang deteksi kesalahan di header segmennya. Dua
layanan lapisan transport minimal ini - pengiriman data proses-
ke-proses dan pengecekan kesalahan - yaitu dua layanan yang
disediakan oleh UDP! Khususnya, seperti IP, UDP yaitu layanan
28
yang tidak dapat diandalkan itu tidak menjamin bahwa data yang
dikirim oleh satu proses akan tiba utuh ke proses tujuan.
Di sisi lain, TCP menawarkan beberapa layanan tambahan
untuk aplikasi. Pertama dan terpenting, ini menyediakan transfer
data yang andal. memakai kontrol aliran, nomor urut, ucapan
terima kasih, dan penghitung waktu (teknik yang akan kita eksplorasi
secara rinci dalam bab ini), TCP memastikan bahwa data dikirim
dari proses pengiriman ke proses penerimaan, dengan benar dan
teratur. TCP dengan demikian mengubah layanan IP yang tidak dapat
diandalkan antara sistem akhir menjadi layanan transportasi data
yang andal antar proses. TCP juga menyediakan kontrol kemacetan.
Secara longgar, kontrol kemacetan TCP mencegah koneksi TCP mana
pun dari swamping link dan router antara host komunikasi dengan
jumlah lalu lintas yang berlebihan. TCP berusaha untuk memberikan
setiap koneksi yang melintasi tautan yang padat bagian yang sama
dari lebar pita tautan. Ini dilakukan dengan mengatur kecepatan di
mana sisi pengirim koneksi TCP dapat mengirimkan lalu lintas ke
jaringan. Lalu lintas UDP, di lain pihak, tidak diatur. Aplikasi yang
memakai transportasi UDP dapat mengirim dengan cara apa
pun yang diinginkan, selama diinginkan.
B. Multiplexing dan Demultiplexing
Pada bagian ini, kita membahas multiplexing transport-layer dan
demultiplexing, yaitu, memperluas layanan pengiriman host-to-host yang
disediakan oleh lapisan jaringan ke layanan pengiriman proses-ke-proses
untuk aplikasi yang berjalan di host.
Demultiplexing yaitu pekerjaan mengirimkan data dalam segmen
lapisan transport ke soket yang benar. Pekerjaan mengumpulkan potongan
data pada host sumber dari soket yang berbeda, merangkum setiap
potongan data dengan informasi header (yang nantinya akan digunakan
dalam demultiplexing) untuk membuat segmen, dan meneruskan segmen
ke lapisan jaringan disebut multiplexing.
Transport-layer multiplexing mensyaratkan (1) bahwa soket memiliki
pengidentifikasi unik, dan (2) bahwa setiap segmen memiliki bidang
khusus yang menunjukkan soket yang akan dikirimi segmen tersebut.
LAPISAN TRANSPORT 29
Bidang khusus ini yaitu bidang nomor port sumber dan bidang nomor
port tujuan. Setiap nomor port yaitu nomor 16-bit, mulai dari 0 hingga
65535. Nomor port mulai dari 0 hingga 1023 disebut dengan baik nomor
port yang dikenal dan dibatasi, yang berarti mereka dicadangkan untuk
digunakan oleh protokol aplikasi yang terkenal seperti HTTP (yang
memakai nomor port 80) dan FTP (yang memakai nomor
port 21). Daftar nomor port terkenal diberikan dalam RFC 1700 dan
diperbarui di http://www.iana.org [RFC 3232]. Seharusnya sekarang
menjadi jelas bagaimana lapisan transport dapat mengimplementasikan
layanan demultiplexing: Setiap soket di host dapat diberi nomor port, dan
ketika sebuah segmen tiba di host, layer transport memeriksa nomor port
tujuan di segmen dan mengarahkan segmen ke soket yang sesuai. Data
segmen kemudian melewati soket ke proses terlampir. Seperti yang akan
kita lihat, ini pada dasarnya bagaimana UDP melakukannya. Namun, kita
juga akan melihat bahwa multiplexing / demultiplexing dalam TCP masih
lebih halus.
Gambar 3.2 Multiplexing dan Demultiplexing
• Multiplexing dan Demultiplexing tanpa Koneksi
Python yang berjalan di host dapat membuat soket UDP dengan
garis clientSocket = socket (AF_INET, SOCK_DGRAM). Ketika
soket UDP dibuat dengan cara ini, lapisan transport secara otomatis
memberikan nomor port ke soket. Secara khusus, layer transport
memberikan nomor port dalam kisaran 1024 hingga 65535 yang
saat ini tidak digunakan oleh port UDP lain di host. Atau, kita dapat
menambahkan baris ke program Python setelah kita membuat soket
untuk mengaitkan nomor port tertentu (katakanlah, 19157) ke soket
UDP ini melalui metode bind socket ():
30
clientSocket.bind ((‘’, 19157))
Jika pengembang aplikasi yang menulis kode menerapkan sisi
server dari “protokol terkenal,” maka pengembang harus menetapkan
nomor port terkenal yang sesuai. Biasanya, sisi klien aplikasi
memungkinkan lapisan transport secara otomatis (dan transparan)
menetapkan nomor port, sedangkan sisi server aplikasi menetapkan
nomor port tertentu.
Soket UDP sepenuhnya diidentifikasi oleh dua-tupel yang terdiri
dari alamat IP tujuan dan nomor port tujuan. Sebagai akibatnya, jika
dua segmen UDP memiliki alamat IP sumber dan / atau nomor port
sumber yang berbeda, tetapi memiliki alamat IP tujuan dan nomor
port tujuan yang sama, maka kedua segmen tersebut akan diarahkan
ke proses tujuan yang sama melalui soket tujuan yang sama.
• Multiplexing dan Demultiplexing Berorientasi Koneksi
Untuk memahami TCP demultiplexing, kita harus mencermati soket
TCP dan koneksi TCP. Satu perbedaan halus antara soket TCP dan
soket UDP yaitu soket TCP diidentifikasi oleh empat tupel: (alamat
IP sumber, nomor port sumber, alamat IP tujuan, nomor port tujuan).
Jadi, ketika segmen TCP tiba dari jaringan ke host, host memakai
keempat nilai untuk mengarahkan (demultiplex) segmen ke soket
yang sesuai. Khususnya, dan berbeda dengan UDP, dua segmen TCP
yang datang dengan alamat IP sumber yang berbeda atau nomor port
sumber akan (dengan pengecualian segmen TCP yang membawa
permintaan pendirian-koneksi yang asli) diarahkan ke dua soket yang
berbeda.
Aplikasi server TCP memiliki “socket sambutan”, yang menunggu
permintaan koneksi-pendirian dari klien TCP pada nomor port 12000.
Klien TCP membuat socket dan mengirimkan segmen permintaan
pembentukan koneksi dengan baris-baris:
clientSocket = socket (AF_INET, SOCK_STREAM) clientSocket.
connect ((serverName, 12000))
Permintaan pembentukan koneksi tidak lebih dari segmen TCP
dengan nomor port tujuan 12000 dan bit pembentukan koneksi khusus
yang diatur dalam header TCP (dibahas dalam Bagian 3.5). Segmen
ini juga mencakup nomor port sumber yang dipilih oleh klien. Ketika
sistem operasi host dari komputer yang menjalankan proses server
LAPISAN TRANSPORT 31
menerima yang masuk segmen permintaan-sambungan dengan port
tujuan 12000, ini menempatkan proses server yang sedang menunggu
untuk menerima koneksi pada nomor port 12000. Proses server
kemudian membuat soket baru:
connectionSocket, addr = serverSocket.accept ()
Lapisan transport di server mencatat empat nilai berikut dalam
segmen permintaan koneksi: (1) nomor port sumber di segmen, (2)
alamat IP host sumber, (3) nomor port tujuan di segmen, dan (4)
alamat IP-nya sendiri. Soket koneksi yang baru dibuat diidentifikasi
oleh empat nilai ini; semua segmen yang tiba selanjutnya yang port
sumbernya, alamat IP sumber, port tujuan, dan alamat IP tujuan yang
cocok dengan keempat nilai ini akan didemultipleksikan ke soket ini.
Dengan koneksi TCP sekarang di tempat, klien dan server sekarang
dapat saling mengirim data.
Host server dapat mendukung banyak soket koneksi TCP
simultan, dengan masing-masing soket terpasang pada suatu proses,
dan dengan masing-masing soket diidentifikasi oleh empat tupelnya
sendiri. Ketika segmen TCP tiba di host, keempat bidang (alamat IP
sumber, port sumber, alamat IP tujuan, port tujuan) digunakan untuk
mengarahkan (demultiplex) segmen ke soket yang sesuai.
Gambar 3.3 Multiplexing dan Demultiplexing Berorientasi Koneksi
32
• Server Web dan TCP
Pertimbangkan host yang menjalankan server Web, seperti server
Web Apache, pada port 80. Ketika klien (misalnya, browser)
mengirim segmen ke server, semua segmen akan memiliki port
tujuan 80. Secara khusus, keduanya yaitu koneksi awal yang dibuat.
segmen dan segmen yang membawa pesan permintaan HTTP akan
memiliki port tujuan 80. Server membedakan segmen dari klien yang
berbeda memakai alamat IP sumber dan port sumber angka. Jika
klien dan server memakai HTTP persisten, maka selama durasi
koneksi persisten klien dan server bertukar pesan HTTP melalui soket
server yang sama.
C. Transport Tanpa Koneksi: UDP
UDP, didefinisikan dalam [RFC 768], hanya melakukan sedikit yang
dapat dilakukan oleh protokol transport. Selain dari fungsi multiplexing
/ demultiplexing dan beberapa pengecekan error ringan, ia tidak
menambahkan apa-apa ke IP. Bahkan, jika pengembang aplikasi memilih
UDP daripada TCP, maka aplikasi tersebut hampir langsung berbicara
dengan IP. UDP mengambil pesan dari proses aplikasi, melampirkan
bidang nomor port sumber dan tujuan untuk layanan multiplexing /
demultiplexing, menambahkan dua bidang kecil lainnya, dan meneruskan
segmen yang dihasilkan ke lapisan jaringan. Lapisan jaringan merangkum
segmen lapisan transport ke dalam datagram IP dan kemudian membuat
upaya-upaya terbaik untuk mengirimkan segmen ke host penerima. Jika
segmen tiba di host penerima, UDP memakai nomor port tujuan
untuk mengirimkan data segmen ke proses aplikasi yang benar. Perhatikan
bahwa dengan UDP tidak ada jabat tangan antara mengirim dan menerima
entitas lapisan transportasi sebelum mengirim segmen. Untuk alasan ini,
UDP dikatakan tanpa koneksi.
Beberapa alasan pengembang aplikasi memilih untuk membangun
aplikasi melalui UDP, sebab beberapa aplikasi cocok untuk UDP. Berikut
penjelasannya:
• Kontrol tingkat aplikasi yang lebih baik atas data apa dan kapan data
dikirim.
LAPISAN TRANSPORT 33
• Tidak ada pembentukan koneksi. UDP tidak memperkenalkan
penundaan apapun untuk membuat sambungan.
• Tidak ada status koneksi. UDP aktif di sisi lain, tidak mempertahankan
ststus koneksi dan tidak melacak parameter ini. Oleh sebab itu, server
yang dikhususkan untuk aplikasi tertentu biasanya dapat mendukung
lebih banyak aplikasi aktif klien ketika aplikasi berjalan melalui UDP
daripada TCP.
• Overhead header paket kecil. Segmen UDP hanya memiliki 8 byte
overhead.
1. Struktur Segmen UDP
Gambar 3.4 Struktur Segmen UDP
Data aplikasi menempati bidang data segmen UDP. Misalnya,
untuk DNS, bidang data berisi pesan kueri atau pesan respons.
Untuk aplikasi audio streaming, sampel audio mengisi bidang data.
Header UDP hanya memiliki empat bidang, masing-masing terdiri
dari dua byte. Seperti dibahas di bagian sebelumnya, nomor port
memungkinkan host tujuan untuk meneruskan data aplikasi ke proses
yang benar berjalan pada sistem tujuan akhir (yaitu, untuk melakukan
fungsi demultiplexing).
2. Checksum UDP
Checksum UDP menyediakan deteksi kesalahan. Yaitu, checksum
digunakan untuk menentukan apakah bit dalam segmen UDP telah
diubah (misalnya, oleh noise di tautan atau saat disimpan di router)
saat dipindahkan dari sumber ke tujuan. UDP di sisi pengirim
34
melakukan pelengkap 1s dari jumlah semua kata 16-bit di segmen
tersebut, dengan setiap luapan yang ditemui selama jumlah yang
dibungkus. Hasil ini diletakkan di bidang checksum segmen UDP. Di
sini kita memberikan contoh sederhana dari perhitungan checksum.
Anda dapat menemukan detail tentang implementasi perhitungan
yang efisien di RFC 1071 dan kinerja data nyata di [Stone 1998; Stone
2000]. Sebagai contoh, misalkan kita memiliki tiga kata 16-bit berikut:
0110011001100000
0101010101010101
1000111100001100
Jumlah dari dua kata pertama dari 16-bit ini yaitu
0110011001100000
0101010101010101 1011101110110101
Menambahkan kata ketiga ke jumlah di atas memberi
1011101110110101
1000111100001100 0100101011000010
Perhatikan bahwa penambahan terakhir ini telah meluap, yang
dibungkus. Komplemen 1s diperoleh dengan mengubah semua
0s ke 1s dan mengubah semua 1s menjadi 0s. Jadi komplemen 1s
dari jumlah 0100101011000010 yaitu 1011010100111101, yang
menjadi checksum. Di penerima, keempatnya 16 ditambahkan
sedikit kata, termasuk checksum. Jika tidak ada kesalahan yang
dimasukkan ke dalam paket, maka jelas jumlah pada penerima yaitu
1111111111111111. Jika salah satu bit yaitu 0, maka kita tahu bahwa
kesalahan telah dimasukkan ke dalam paket.
Ini mengakhiri diskusi kita tentang UDP. Kita akan segera
melihat bahwa TCP menawarkan transfer data yang dapat diandalkan
ke aplikasinya serta layanan lain yang tidak ditawarkan UDP. Secara
alami, TCP juga lebih kompleks daripada UDP. Namun, sebelum
membahas TCP, akan berguna untuk mundur dan terlebih dahulu
membahas prinsip-prinsip dasar transfer data yang andal.
LAPISAN TRANSPORT 35
D. Prinsip-Prinsip Transfer Data Yang Handal
Transfer data yang handal terjadi tidak hanya pada lapisan transport, tetapi
juga pada layer link dan layer aplikasi. Lapisan atas yaitu lapisan yang
dapat dipercaya untuk mentransfer data. Dengan saluran yang andal, tidak
ada bit data yang ditransfer yang rusak atau hilang, dan semua dikirim
sesuai urutan pengirimannya.
Pada bagian ini, yang dipertimbangkan yaitu transfer data searah,
yaitu transfer data dari mengirim ke sisi penerima. Meski begitu, sisi
pengirim dan penerima protokol tetap perlu mengirimkan paket di kedua
arah.
1. Membangun Protokol Transfer Data yang Handal
› Transfer Data yang Handal Melalui Saluran yang Sangat Handal:
rdt 1.0
Gambar 3.5 Transfer Data memakai rdt 1.0
Dalam prakteknya, rdt_send (data) akan dihasilkan dari
panggilan prosedur rdt_send oleh aplikasi lapisan atas. Di sisi
penerima, rdt menerima paket dari saluran yang mendasari
melalui acara rdt_rcv (paket). Rdt yaitu singkatan dari protocol
transder data.
Menghapus data dari paket melalui ekstrak tindakan paket,
data dan meneruskan ke lapisan atas.
36
Melalui deliver_data (tindakan data), rdt_rcv akan dihasilkan
dari panggilan prosedur.
› Transfer Data Melalui Channel yang dapat diandalkan dengan bit
error: rdt 2.0
Pada dasarnya, tiga kapabilitas protokol tambahan diperlukan
dalam protokol ARQ untuk menangani adanya kesalahan bit: (1)
Deteksi kesalahan, (2) Penerima umpan balik, dan (3) Transmisi
ulang.
Gambar 3.6 Transfer Data memakai rdt 2.0
› Transfer Data yang Handal Melalui Saluran Kehilangan dengan
Kesalahan Bit: rdt 3.0
Gambar 3.7 Transfer Data memakai rdt 3.0
LAPISAN TRANSPORT 37
2. Membangun Protokol Data yang Dapat Dilalui
Gambar 3.8 Data Protocol
Kecepatan propaganda round-trip, round-speed antara kedua sistem
akhir ini kira-kira 30 milidetik. Misalkan mereka dihubungkan oleh
saluran dengan tingkat transmisi, R, 1 Gbps (109 bit per detik).
Dengan ukuran paket, L, dari 1.000 byte.
3. Go-Back-N (GBN)
Dalam protokol Go-Back-N (GBN), pengirim diizinkan untuk
mengirimkan beberapa paket (jika tersedia) tanpa menunggu
pengakuan, tetapi dibatasi untuk memiliki tidak lebih dari beberapa
jumlah maksimum yang diijinkan, N, dari paket yang tidak diakui
dalam paket. pipa. Kita menjabarkan protokol GBN secara terperinci
di bagian ini. Tetapi sebelum membaca, Anda dianjurkan untuk
bermain dengan applet GBN (applet yang luar biasa!) Di situs Web
pendamping.
Gambar 3.9 GBN Protocol
Kita mencatat di sini bahwa protokol GBN menggabungkan
hampir semua teknik yang akan kita temui ketika kita mempelajari
komponen transfer data TCP yang dapat diandalkan di Bagian 3.5.
Teknik-teknik ini termasuk penggunaan nomor urut, ucapan terima
kasih kumulatif, checksum, dan operasi batas waktu / transmisi ulang.
n +1
38
4. Ulangi Selektif (SR)
Protokol GBN memungkinkan pengirim untuk berpotensi “mengisi
saluran pipa” dengan paket, sehingga menghindari masalah
pemanfaatan saluran yang kita catat dengan protokol stop-and-
wait. Kesalahan paket secara keseluruhan dapat menyebabkan GBN
mentransmisikan ulang sejumlah besar paket. Namun, ada skenario
di mana GBN sendiri mengalami masalah kinerja. Secara khusus,
ketika ukuran jendela dan produk bandwidth-delay keduanya besar,
banyak paket dapat berada dalam pipa. Dengan demikian, satu paket
kesalahan dapat menyebabkan GBN mengirimkan kembali sejumlah
besar paket, banyak yang tidak perlu. Ketika probabilitas kesalahan
saluran meningkat, pipa dapat diisi dengan transmisi ulang yang tidak
perlu ini. Bayangkan, dalam skenario dikte-pesan kita, bahwa jika
setiap kali kata dikacaukan, 1.000 kata di sekitarnya (misalnya, ukuran
jendela 1.000 kata) harus diulang.
Gambar 3.10 Selective Repeat
E. Connection-Oriented Transport: TCP
1. Koneksi TCP
TCP dikatakan berorientasi koneksi sebab sebelumnya satu proses
aplikasi dapat mulai mengirim data di sisi lain, dan harus mengirim
beberapa segmen awal satu sama lain untuk menetaplan parameter
transfer data berikutnya. Bagian dari pembentukan koneksi TCP,
LAPISAN TRANSPORT 39
kedua sisi koneksi akan menginisialisasi banyak variabel status TCP
terkait dengan TCP koneksi.
Sambuangan TCP bukanlah rangkaian TDM atau FDM ujung
ke ujung seperti pada jaringan saklar-sirkuit. Sebagai gantinya,
“koneksi” yaitu salah satu yang logis, dengan keadaan umum hanya
berada di TCP di dua yang berkomunikasi sistem akhir. Koneksi TCP
menyediakan layanan dupleks penuh, TCP koneksi juga selalu point-
to-point, yaitu antara satu pengirim dan satu penerima.
Gambar 3.11 TCP Mengirim dan Menerima Buffers
2. Struktur Segmen TCP
TCP segmen terdiri dari bidang tajuk dan bidang data. Bidang data
berisi potongan data aplikasi.
Gambar 3.12 Struktur Segmen TCP
40
3. Estimasi Waktu Pulang Pergi dan Batas Waktu
Batas waktu harus lebih besar daripada waktu pulang-pergi koneksi
(RTT) koneksi, yaitu, waktu dari ketika suatu segmen dikirim sampai
diakui. Margin harus besar ketika ada banyak fluktuasi dalam nilai-
nilai SampleRTT; itu harus kecil ketika ada sedikit fluktuasi.
Memperkirakan Waktu Pulang-Pergi
Sampel RTT, dilambangkan dengan Sampel RTT, untuk segmen
yaitu jumlah waktu antara saat segmen dikirim dan kapan pengakuan
untuk segmen tersebut diterima. Alih-alih mengukur SampelRTT
untuk setiap segmen yang ditransmisikan, sebagian besar implementasi
TCP hanya mengambil satu pengukuran SampelRTT pada satu waktu.
Artinya, pada titik waktu manapun, SampleRTT diestimasi hanya
untuk satu tetapi yang ditransmisikan segmen yang saat ini belum
diakui, yang mengarah ke nilai baru SampleRTT kira-kira sekali setiap
RTT. Juga, TCP tidak pernah menghitung SampleRTT untuk segmen
yang telah ditransmisikan ulang; itu saja mengukur SampleRTT untuk
segmen yang telah dikirim satu kali.
EstimatedRTT yaitu rata-rata setimbang dari nilai SampleRTT.
DevRTT yaitu EWMA dari perbedaan antara SampleRTT dan
EstimatedRTT. Jika nilai SampleRTT memiliki sedikit fluktuasi, maka
DevRTT akan kecil; sebaliknya jika jumlahnya banyak fluktuasi,
DevRTT akan menjadi besar. Nilai β yang direkomendasikan yaitu
0.25. untuk menentukan interval batas waktu transmisi ulang:
Direkomendasikan nilai TimeoutInterval awal 1 detik. Juga saat
timeout terjadi, nilai TimeoutInterval digandakan untuk menghindari
waktu tunggu prematur yang terjadi untuk segmen selanjutnya yang
akan segera diakui. Namun, begitu segmen diterima dan EstimatedRTT
diperbarui, TimeoutInterval lagi dihitung memakai rumus di atas.
LAPISAN TRANSPORT 41
4. Transfer Data Yang Andal
Ingat bahwa layanan lapisan jaringan (layanan IP) Internet tidak dapat
diandalkan. IP tidak menjamin pengiriman datagram, tidak menjamin
pengiriman datagram secara berurutan, dan tidak menjamin integritas
data dalam datagram. Dengan layanan IP, datagram dapat meluap
buffer router dan tidak pernah mencapai tujuan mereka, datagram
bisa rusak, dan bit dalam datagram bisa rusak (dibalik dari 0 ke 1
dan sebaliknya). sebab segmen layer transport dilakukan di seluruh
jaringan oleh datagram IP, segmen layer transport dapat menderita
dari masalah ini juga.
Modifikasi yang diusulkan untuk TCP, yang disebut selective
acknowledgment [RFC 2018], memungkinkan penerima TCP
untuk mengakui segmen out-of-order secara selektif daripada hanya
mengakui secara kumulatif segmen terakhir yang diterima dengan
benar. Ketika dikombinasikan dengan transmisi ulang selektif —
melewatkan transmisi ulang segmen yang telah diakui secara selektif
oleh penerima — TCP sangat mirip dengan protokol SR umum kita.
Dengan demikian, mekanisme pemulihan kesalahan TCP mungkin
paling baik dikategorikan sebagai hibrida dari protokol GBN dan SR.
5. Kontrol Aliran
Ingatlah bahwa host di setiap sisi koneksi TCP menyisihkan buffer
penerima untuk koneksi. Ketika koneksi TCP menerima byte yang
benar dan berurutan, itu menempatkan data dalam buffer menerima.
Proses aplikasi terkait akan membaca data dari buffer ini, tetapi tidak
harus pada saat data tiba. Memang, aplikasi penerima mungkin sibuk
dengan beberapa tugas lain dan bahkan mungkin tidak mencoba
untuk membaca data sampai lama setelah itu tiba. Jika aplikasi relatif
lambat dalam membaca data, pengirim dapat dengan mudah meluap
buffer menerima koneksi dengan mengirim terlalu banyak data terlalu
cepat.
n <NN − 1
n + 1, n + 2,…, N.
n +1
TCP menyediakan layanan kontrol aliran ke aplikasinya untuk
menghilangkan kemungkinan pengirim meluap dari buffer penerima.
42
Kontrol aliran dengan demikian yaitu layanan pencocokan kecepatan
— mencocokkan kecepatan pengiriman pengirim dengan kecepatan
membaca aplikasi penerima. Seperti disebutkan sebelumnya, pengirim
TCP juga dapat dibatasi sebab kemacetan dalam jaringan IP; bentuk
kontrol pengirim ini disebut kontrol kemacetan. Meskipun tindakan
yang diambil oleh kontrol aliran dan kemacetan serupa (pelambatan
pengirim), mereka jelas diambil sebab alasan yang sangat berbeda.
Nmap yaitu alat yang ampuh yang dapat “membentuk
sambungan” tidak hanya untuk port TCP terbuka, tetapi juga untuk
port UDP terbuka, untuk firewall dan konfigurasinya, dan bahkan
untuk versi aplikasi dan sistem operasi. Sebagian besar ini dilakukan
dengan memanipulasi segmen manajemen koneksi TCP [Skoudis
2006].
Gambar 3.13 The Receive(rwnd) dan The Receive Buffer (RcVBuffer)
F. Prinsip Kontrol Kemacetan
Pada bagian sebelumnya, kita menguji prinsip umum dan mekanisme
TCP spesifik yang digunakan untuk menyediakan layanan transfer
data yang andal dalam menghadapi hilangnya paket. Kerugian seperti
itu biasanya disebabkan oleh melimpahnya buffer router ketika
jaringan menjadi padat. Paket transmisi ulang dengan demikian
menangani gejala kemacetan jaringan (hilangnya segmen lapisan
transport tertentu) tetapi tidak memperlakukan penyebab kemacetan
jaringan — terlalu banyak sumber yang mencoba mengirim data
dengan laju yang terlalu tinggi. Untuk mengatasi penyebab kemacetan
LAPISAN TRANSPORT 43
jaringan, diperlukan mekanisme untuk mencekik pengirim di
hadapan kemacetan jaringan.
G. Penyebab dan Biaya Kemacetan
Skenario 1: Dua Pengirim, Perute dengan Buffer Tak Terbatas, tidak
ada retransmission, penundaan ketika kemacetan besar,
dicapainya throughput maksimal.
Skenario 2: Dua pengirim, sebuah router dengan buffer tak terbatas,
pengirim retransmission dari paket yang hilang.
Skenario 3: Empat pengirim, beberapa router dengan buffer tak
terbatas, jalur multihop, batas waktu pengiriman ulang.
1. Pendekatan untuk Kontrol Kemacetan
Pada level tertinggi, kita dapat membedakan antara pendekatan
kontrol kemacetan dengan apakah layer jaringan memberikan
bantuan eksplisit ke layer transport untuk tujuan kontrol kemacetan:
› Kontrol kemacetan ujung ke ujung. Dalam pendekatan ujung
ke ujung untuk kontrol kemacetan, lapisan jaringan tidak
memberikan dukungan eksplisit ke lapisan pengangkutan
untuk tujuan kontrol kemacetan. Bahkan kehadiran kemacetan
jaringan harus disimpulkan oleh sistem akhir hanya berdasarkan
perilaku jaringan yang diamati (misalnya, packet loss dan delay.
Kehilangan segmen TCP dianggap sebagai indikasi kemacetan
jaringan, dan TCP mengurangi ukuran jendelanya. Kita juga
akan melihat proposal yang lebih baru untuk kontrol kemacetan
TCP yang memakai peningkatan segmen round-trip delay
sebagai indikator peningkatan kemacetan jaringan.
› Kontrol kemacetan yang dibantu jaringan. Dengan kontrol
kemacetan yang dibantu jaringan, router memberikan umpan
balik eksplisit kepada pengirim dan / atau penerima mengenai
keadaan kemacetan jaringan. Umpan balik ini mungkin
sesederhana satu bit yang mengindikasikan kemacetan pada
suatu tautan - suatu pendekatan yang diambil pada SNA IBM
awal [Schwartz 1982], DEC DECnet [Jain 1989; Ramakrishnan
1990] arsitektur, dan arsitektur jaringan ATM [Black 1995].
44
Umpan balik yang lebih canggih juga dimungkinkan. Misalnya,
dalam kontrol kemacetan ATM Available Bite Rate (ABR), router
memberi tahu pengirim tentang laju pengiriman host maksimum
yang dapat didukung (router) pada tautan keluar.
H. Kontrol Kemacetan TCP
TCP menyediakan layanan transportasi yang andal antara dua proses yang
berjalan pada host yang berbeda. Komponen kunci lain dari TCP yaitu
mekanisme kontrol kemacetannya. TCP harus memakai kontrol
kemacetan ujung-ke-ujung daripada kontrol kemacetan yang dibantu
jaringan, sebab lapisan IP tidak memberikan umpan balik eksplisit ke
sistem akhir mengenai kemacetan jaringan.
Pendekatan yang diambil oleh TCP yaitu membuat setiap pengirim
membatasi tingkat pengiriman lalu lintas ke dalam koneksinya sebagai
fungsi dari kemacetan jaringan yang dirasakan. Prinsip-prinsip panduan
TCP berikut:
• Segmen yang hilang menyiratkan kemacetan, dan sebab nya, tingkat
pengirim TCP harus dikurangi ketika sebuah segmen hilang.
• Segmen yang menunjukkan bahwa jaringan mengirimkan segmen
pengirim ke penerima, dan sebab nya, laju pengirim dapat dinaikkan
ketika ACK tiba untuk segmen yang sebelumnya tidak diakui.
• Masalah bandwidth
Dengan tinjauan umum tentang kontrol kemacetan TCP ini, kita
sekarang dapat mempertimbangkan detail algoritme kontrol-kemacetan
TCP yang dirayakan, yang pertama kali dijelaskan dalam [Jacobson
1988] dan distandarisasi dalam [RFC 5681]. Algoritma ini memiliki tiga
komponen utama: (1) mulai lambat, (2) menghindari kemacetan, dan
(3) pemulihan cepat. Mulai lambat dan penghindaran kemacetan yaitu
komponen wajib TCP, berbeda dalam cara mereka meningkatkan ukuran
cwnd dalam menanggapi ACK yang diterima.
• Prinsip-Prinsip Dalam Praktek Tcp Splitting: Mengoptimalkan
Kinerja Layanan Cloud
Untuk layanan cloud seperti pencarian, email, dan jejaring sosial,
diinginkan untuk memberikan tingkat responsif yang tinggi, idealnya
LAPISAN TRANSPORT 45
memberikan ilusi kepada pengguna bahwa layanan tersebut berjalan
di dalam sistem akhir mereka sendiri (termasuk smartphone mereka).
Ini bisa menjadi tantangan besar, sebab pengguna sering berada jauh
dari pusat data yang bertanggung jawab untuk menyajikan konten
dinamis yang terkait dengan layanan cloud. Memang, jika sistem akhir
jauh dari pusat data, maka RTT akan besar, berpotensi menyebabkan
kinerja waktu respons yang buruk sebab TCP mulai lambat.
Sebagai studi kasus, pertimbangkan keterlambatan dalam
menerima respons untuk permintaan pencarian. Biasanya,
server memerlukan tiga jendela TCP selama mulai lambat untuk
memberikan respons [Pathak 2010]. Dengan demikian waktu dari
ketika sistem akhir memulai koneksi TCP sampai waktu ketika
menerima paket terakhir dari respon kira-kira (satu RTT untuk
mengatur koneksi TCP ditambah tiga RTT untuk tiga jendela data)
ditambah waktu pemrosesan dalam pusat data. Penundaan RTT ini
dapat menyebabkan keterlambatan nyata dalam mengembalikan hasil
pencarian untuk sebagian kecil kueri. Selain itu, bisa ada kehilangan
paket yang signifikan dalam jaringan akses, yang menyebabkan
transmisi ulang TCP dan penundaan yang lebih besar.
Salah satu cara untuk mengurangi masalah ini dan meningkatkan
kinerja yang dirasakan pengguna yaitu (1) menyebarkan server
frontend lebih dekat ke pengguna, dan (2) memanfaatkan pemisahan
TCP dengan memutus koneksi TCP di server front-end. Dengan
pemisahan TCP, klien membuat koneksi TCP ke front-end terdekat,
dan front-end mempertahankan koneksi TCP yang persisten ke pusat
data dengan jendela kongesti TCP yang sangat besar [Tariq 2008,
Pathak 2010, Chen 2011]. Dengan pendekatan ini, waktu respons
secara kasar menjadi waktu pemrosesan, di mana RTT yaitu waktu
bolak-balik antara klien dan server front-end, dan RTT yaitu waktu
bolak-balik antara server frontend dan pusat data (server back-end).
Jika server front-end dekat dengan klien, maka waktu respons ini
kira-kira menjadi RTT plus waktu pemrosesan, sebab RTT sangat
kecil dan RTT kira-kira RTT. Singkatnya, pemisahan TCP dapat
mengurangi penundaan jaringan secara kasar dari ke RTT, secara
signifikan meningkatkan kinerja yang dirasakan pengguna, terutama
bagi pengguna yang jauh dari pusat data terdekat. Pemisahan TCP juga
membantu mengurangi keterlambatan pengiriman ulang TCP yang
disebabkan oleh kerugian dalam jaringan akses. Google dan Akamai
46
telah memakai server CDN mereka secara ekstensif dalam
jaringan akses (ingat diskusi kita di Bagian 2.6) untuk melakukan
pemisahan TCP untuk layanan cloud yang mereka dukung [Chen
2011]. Status menghindari kemacetan setelah mengempiskan cwnd.
Jika terjadi waktu habis, transisi pemulihan cepat ke kondisi mulai-
lambat setelah melakukan tindakan yang sama seperti pada awal yang
lambat dan penghindaran kemacetan: Nilai cwnd diatur ke 1 MSS,
dan nilai ssthresh diatur ke setengah dari nilai cwnd ketika peristiwa
kerugian terjadi.
Pemulihan cepat direkomendasikan, tetapi tidak diperlukan,
komponen TCP [RFC 5681]. Sangat menarik bahwa versi awal TCP,
yang dikenal sebagai TCP Tahoe, tanpa syarat memangkas jendela
kemacetannya menjadi 1 MSS dan memasuki fase mulai-lambat
setelah peristiwa kehilangan yang diindikasikan timeout atau triple-
duplikat-ACK. Versi terbaru dari TCP, TCP Reno, memasukkan
pemulihan cepat.
Dalam gambar ini, ambang awalnya sama dengan 8 MSS. Untuk
delapan putaran transmisi pertama, Tahoe dan Reno mengambil
tindakan yang identik. Jendela kemacetan naik secara eksponensial
cepat selama start lambat dan mencapai ambang batas pada putaran
keempat transmisi. Jendela kemacetan kemudian naik secara linear
hingga peristiwa tiga rangkap-ACK terjadi, tepat setelah putaran
transmisi 8. Perhatikan bahwa jendela kemacetan yaitu saat peristiwa
kerugian ini terjadi. Nilai ssthresh kemudian diatur ke cwnd Di bawah
TCP Reno, jendela congestion diatur ke cwnd dan kemudian tumbuh
secara linear. Di bawah TCP Tahoe, jendela kemacetan diatur ke 1
MSS dan tumbuh secara eksponensial hingga mencapai nilai ssthresh,
di mana titik itu tumbuh secara linear.
• Kontrol Kemacetan TCP: Retrospektif
Setelah mempelajari rincian mulai lambat, penghindaran kemacetan,
dan pemulihan cepat, ada baiknya untuk sekarang mundur dan
melihat hutan dari pohon. Mengabaikan
12 ∙ MSS 0,5 ∙ = 6 ∙ MSS. = 9 ∙ MSS
Kontrol kemacetan AIMD memunculkan perilaku “gigi gergaji”
yang ditunjukkan pada Gambar 3.53, yang juga menggambarkan
dengan baik intuisi awal kita tentang “menyelidik” untuk bandwidth
LAPISAN TRANSPORT 47
— TCP secara linear meningkatkan ukuran jendela kemacetan (dan
sebab nya laju transmisi) hingga duplikat rangkap tiga. Peristiwa
-ACK terjadi. Ini kemudian mengurangi ukuran jendela kemacetannya
dengan faktor dua tetapi sekali lagi mulai meningkatkannya secara
linear, memeriksa apakah ada bandwidth tambahan yang tersedia.
1. Keadilan
Pertimbangkan koneksi K TCP, masing-masing dengan jalur ujung ke
ujung yang berbeda, tetapi semua melewati jalur penghambat dengan
laju transmisi Rbps. (Dengan tautan bottleneck, kita maksudkan
bahwa untuk setiap koneksi, semua tautan lain di sepanjang jalur
koneksi tidak macet dan memiliki kapasitas transmisi yang melimpah
dibandingkan dengan kapasitas transmisi dari tautan bottleneck.)
Misalkan setiap koneksi mentransfer file besar dan ada tidak ada lalu
lintas UDP yang melewati tautan bottleneck. Mekanisme kontrol
kemacetan dikatakan adil jika laju transmisi rata-rata setiap koneksi
yaitu sekitar R / K;
throughput rata-rata koneksi = 1,22 ∙ MSSRTTL–10
artinya, setiap koneksi mendapat bagian yang sama dari
bandwidth tautan.
Apakah algoritma AIMD TCP adil, terutama mengingat bahwa
koneksi TCP yang berbeda dapat mulai pada waktu yang berbeda dan
dengan demikian mungkin memiliki ukuran jendela yang berbeda
pada titik waktu tertentu? [Chiu 1989] memberikan penjelasan
yang elegan dan intuitif tentang mengapa kontrol kemacetan TCP
menyatu untuk memberikan bagian yang sama dari bandwidth tautan
bottleneck di antara koneksi TCP yang bersaing.
› Keadilan dan Koneksi TCP Paralel
Tetapi bahkan jika kita bisa memaksa lalu lintas UDP untuk
berperilaku adil, masalah keadilan masih belum sepenuhnya
diselesaikan. Ini sebab tidak ada yang menghentikan aplikasi
berbasis TCP dari memakai beberapa koneksi paralel.
Misalnya, browser Web sering memakai beberapa koneksi
TCP paralel untuk mentransfer beberapa objek dalam halaman
Web. (Jumlah pasti dari beberapa koneksi dapat dikonfigurasi
di sebagian besar browser.) Ketika suatu aplikasi memakai
48
beberapa koneksi paralel, ia mendapatkan fraksi yang lebih
besar dari bandwidth dalam tautan yang padat. Sebagai contoh,
pertimbangkan tautan tingkat R yang mendukung sembilan
aplikasi server klien yang sedang berjalan, dengan masing-masing
aplikasi memakai satu koneksi TCP. Jika aplikasi baru datang
dan juga memakai satu koneksi TCP, maka masing-masing
aplikasi mendapatkan kira-kira tingkat transmisi R / 10 yang
sama. Tetapi jika aplikasi baru ini sebagai gantinya memakai
11 koneksi TCP paralel, maka aplikasi baru mendapatkan alokasi
yang lebih adil dari lebih dari R / 2. sebab lalu lintas Web begitu
meresap di Internet, beberapa koneksi paralel tidak jarang.
2. Pemberitahuan Kemacetan Eksplisit (ECN): Kontrol Kemacetan
yang dibantu jaringan
Sejak standarisasi awal untuk memulai lambat dan menghindari
kemacetan di akhir 1980-an [RFC 1122], TCP telah menerapkan
bentuk kontrol kemacetan ujung-ujung yang kita pelajari di Bagian
3.7.1: pengirim TCP tidak menerima indikasi kemacetan eksplisit
dari jaringan. lapisan, dan bukannya menyimpulkan kemacetan
melalui hilangnya paket yang diamati. Baru-baru ini, ekstensi untuk
IP dan TCP [RFC 3168] telah diusulkan, diterapkan, dan digunakan
yang memungkinkan jaringan untuk secara eksplisit memberi sinyal
kemacetan ke TCP pengirim dan penerima. Bentuk kontrol kongesti
berbantuan jaringan ini dikenal sebagai Pemberitahuan Kemacetan
Eksplisit. Seperti yang ditunjukkan pada Gambar 3.56, protokol TCP
dan IP terlibat.
Protokol transport-layer lain selain TCP juga dapat memakai
ECN sinyal jaringan-layer. Datagram Congestion Control Protocol
(DCCP) [RFC 4340] menyediakan layanan overhead-rendah, kontrol-
seperti UDP yang tidak dapat diandalkan seperti kemacetan yang
memakai ECN. DCTCP (Data Center TCP) [Alizadeh 2010],
versi TCP yang dirancang khusus untuk jaringan pusat data, juga
memanfaatkan ECN.
LAPISAN TRANSPORT 49
I. Ringkasan
Kita memulai bab ini dengan mempelajari layanan yang dapat diberikan
oleh protokol transport-layer ke aplikasi jaringan. Pada satu ekstrim,
protokol transport-layer bisa sangat sederhana dan menawarkan layanan
tanpa embel-embel untuk aplikasi, hanya menyediakan fungsi multiplexing
/ demultiplexing untuk proses komunikasi. Protokol UDP Internet yaitu
contoh protokol transport-layer tanpa embel-embel. Pada ekstrem yang
lain, protokol transport-layer dapat memberikan berbagai jaminan untuk
aplikasi, seperti pengiriman data yang andal, jaminan keterlambatan, dan
jaminan bandwidth. Namun demikian, layanan yang dapat disediakan
oleh protokol transportasi sering dibatasi oleh model layanan dari protokol
lapisan jaringan yang mendasarinya. Jika protokol lapisan jaringan
tidak dapat memberikan jaminan keterlambatan atau bandwidth untuk
segmen lapisan transportasi, maka protokol lapisan transport tidak dapat
memberikan jaminan keterlambatan atau bandwidth untuk pesan yang
dikirim di antara proses.
Salah satu dari empat lapisan atas tumpukan protokol dapat
menerapkan ucapan terima kasih, pengatur waktu, transmisi ulang, dan
nomor urut dan menyediakan transfer data yang andal ke lapisan di atas.
Faktanya, selama bertahun-tahun, insinyur dan ilmuwan komputer telah
secara independen merancang dan mengimplementasikan protokol tautan,
jaringan, transportasi, dan lapisan aplikasi yang menyediakan transfer data
yang andal (walaupun banyak dari protokol ini telah menghilang dengan
diam-diam). Kita belajar bahwa TCP itu rumit, melibatkan manajemen
koneksi, kontrol aliran, dan estimasi waktu pulang pergi, serta transfer data
yang andal. Faktanya, TCP sebenarnya lebih kompleks daripada deskripsi
kita — kita sengaja tidak membahas berbagai tambalan, perbaikan, dan
perbaikan TCP yang diterapkan secara luas di berbagai versi TCP. Namun,
semua kompleksitas ini disembunyikan dari aplikasi jaringan. Jika klien
pada satu host ingin mengirim data dengan andal ke server di host lain, itu
hanya membuka soket TCP ke server dan memompa data ke dalam soket
itu. Aplikasi client-server sangat tidak menyadari kompleksitas TCP.
Tanpa kontrol kemacetan, jaringan dapat dengan mudah menjadi
macet, dengan sedikit atau tidak ada data yang diangkut dari ujung ke
ujung. Dalam Bagian 3.7 kita belajar bahwa TCP mengimplementasikan
mekanisme kontrol kemacetan ujung-ke-ujung yang secara aditif
50
meningkatkan laju transmisi ketika jalur koneksi TCP dinilai bebas
kemacetan, dan secara multiplikasi menurunkan laju transmisi ketika
kehilangan terjadi. Mekanisme ini juga berusaha untuk memberikan
setiap koneksi TCP yang melewati link padat dengan porsi yang sama
dari bandwidth tautan. Kita juga memeriksa secara mendalam dampak
pembentukan koneksi TCP dan mulai lambat pada latensi. Kita mengamati
bahwa dalam banyak skenario penting, pembangunan koneksi dan start
lambat berkontribusi signifikan terhadap keterlambatan end-to-end.
Kita menekankan sekali lagi bahwa sementara kontrol kemacetan TCP
telah berkembang selama bertahun-tahun, itu tetap merupakan bidang
penelitian intensif dan kemungkinan akan terus berkembang di tahun-
tahun mendatang.
51
BAB 4
LAPISAN JARINGAN:
DATA PLANE
Software Defined Network (SDN) yaitu istilah yang merujuk pada konsep/paradigma baru dalam mendesain, mengelola dan
mengimplementasikan jaringan, terutama untuk mendukung kebutuhan
dan inovasi di bidang ini yang semakin lama semakin kompleks. Konsep
dasar SDN yaitu dengan melakukan pemisahan eksplisit antara control
dan forwarding plane, serta kemudian melakukan abstraksi sistem dan
meng-isolasi kompleksitas yang ada pada komponen atau sub-sistem
dengan mendefinisikan antar-muka (interface) yang standard.
Dalam konsep SDN, tersedia open interface yang memungkinkan
sebuah entitas software/aplikasi untuk mengendalikan konektivitas
yang disediakan oleh sejumlah sumber-daya jaringan, mengendalikan
aliran trafik yang melewatinya serta melakukan inspeksi terhadap atau
memodifikasi trafik tersebut.
A. Sekilas tentang Network Layer
1. Forwarding dan Routing: Data dan Kontrol Pesawat
Yang terakhir merujuk pada proses pemodelan dan abstraksi bidang
kontrol jaringan. Menurut Shenker, SDN control plane memerlukan
setidaknya 3 jenis abstraksi (SDN v1 & v2) :
a. Forwarding Abstraction : bertujuan untuk menjadikan mekanisme
forwarding yang fleksibel dan tidak bergantung pada jenis
perangkat (vendor neutrality).
52
b. State Distribution Abstraction : bertujuan untuk medapatkan global
network view dan menangani semua proses state dissemination/
collection. Abstraksi ini dilakukan oleh NOS (Network Operating
System) yang merupakan sistem terdistribusi, berkomunikasi
dengan elemen jaringan untuk membuat network view. Aplikasi/
control-program memakai network-view ini untuk
menghasilkan konfigurasi setiap elemen jaringan.
c. Specification Abstraction : bertujuan untuk mendapatkan abstract
network view yang merupakan fungsi dari global network view.
Abstraksi ini dilakukan oleh Network Hypervisor (Nypervisor)
yang menterjemahkan abstrak ke global network view. Dengan
Nypervisor, aplikasi/control-program dapat berinteraksi dengan
jaringan seolah-olah seperti single-device.
Gambar 4.1 Lapisan Network
› Lapisan Jaringan
Mengelola pilihan yang berkaitan dengan Host dan Alamat
Jaringan, mengelola Sub-Jaringan, dan InterNetworking.
Mengambil tanggung jawab untuk Routing Paket dari sumber
ke tujuan dalam atau di luar SubNet. Dua subnet yang berbeda
LAPISAN JARINGAN: DATA PLANE 53
mungkin memiliki skema pengalamatan yang berbeda atau jenis
menangani Non-Kompatibel.
Sama dengan Protokol, dua SubNet yang berbeda beroperasi
pada Protokol yang berbeda yang tidak kompatibel satu sama lain.
Lapisan jaringan memiliki tanggung jawab untuk rute paket dari
sumber ke tujuan, pemetaan skema pengalamatan yang berbeda
dan protokol.
Control plane: pendekatan tradisional
Gambar 4.2 Algoritma Perutean Menentukan Nilai dalam Tabel Maju
Control plane: pendekatan SDN
Gambar 4.3 Pengendali Jarak Jauh Menentukan dan
Mendistribusikan Nilai dalam Tabel Penerusan
54
Melalui jaringan, setiap komputer dapat melayani kebutuhan
komputer lainnya di dalam jaringan seperti bertukar data
mencetak gambar, berbagi resource dan lainnya. Namun, tidak
selamanya sebuah komputer menjadi pusat layanan dalam
jaringan, tetapi juga membutuhkan bantuan dari komputer
lainnya. Oleh sebab itu, dilihat dari segi model layanannya,
jaringan dibedakan menjadi dua macam, yaitu sebagai berikut.
Mari kita sekarang mempertimbangkan beberapa
kemungkinan layanan yang lapisan jaringan dapat menyediakan.
Layanan ini dapat Termasuk:
• Dijamin pengiriman.
• Dijamin pengiriman dengan penundaan terbatas.
• Pengiriman paket in-order.
• Bandwidth minimal yang terjamin.
• Keamanan.
B. Apa yang di Namakan Router?
Router yaitu sebuah perangkat yang menghubungkan antara suatu
jaringan dengan jaringan lainnya agar bisa berkomunikasi satu sama
lain. Mustahil jika di dalam sebuah jaringan jika tidak memiliki router
kemudian bisa berhubungan antar jaringan. Ketika kamu melakukan
koneksi ke internet baik dirumah dengan memakai kabel modem,
atau memakai hp, pastinya kamu akan melalui sebuah perangkat
yang bernama router. Data yang dikirimkan dalam sebuah router memiliki
beberapa layer (lapisan) yang biasa disebut dengan OSI Layer (akan dibahas
pada artikel berikutnya).
• Apa yang ada di dalam Router
Di dalam router pastinya memiliki informasi mengenai alamat ip
untuk semua perangkat yang ada di dalam sebuah jaringan. Misalnya
di dalam jaringan komputer kantor, setiap komputer yang terhubung
dengan jaringan pasti memiliki yang namanya ip address. Nah tugas
dari router ini yaitu menyampaikan paket data yang dikirimkan
maupun yang diterima oleh komputer tersebut. Sebagai contoh
sebuah laptop yang terhubung dengan wifi router, maka ketika laptop
LAPISAN JARINGAN: DATA PLANE 55
tersebut membuka sebuah alamat website seperti https://www.google.
com maka tugas dari wifi router yaitu menerima data request dari
laptop tersebut kemudian menyampaikan kepada isp yang sudah
terhubung dengan wifi router yang ada kepada ISP (Internet Service
Provider). Kemudian router yang ada di ISP juga diterukan kepada
router lainnya hingga sampai pada webserver milik google kemudian
memberikan respon kembali sampai dengan laptop tersebut.
Gambar 4.4 Arsitektur Router
1. Switching
Pengertian paling dasar yaitu Switch menciptakan jaringan.
Mayoritas jaringan bisnis saat ini memakai Network Switch untuk
menyambungkan beberapa komputer, telepon, printer, kamera, lampu
dan server pada satu lokasi seperti gedung. Network Switch berfungsi
sebagai pusat kontrol, memungkinkan semua peralatan untuk saling
terhubung dan berfungsi secara efisien. Dengan pembagian data dan
informasi serta alokasi sumber daya yang efisien, Network Switch
dapat menghemat pengeluaran bisnis anda dan meningkatkan
produktifitas para pekerja anda.
Tipe Switch bisa dibagi menjadi 2 tipe; Unmanaged dan Managed.
Unmanaged Switch yaitu produk Switch yang bisa langsung
digunakan tanpa perlu konfigurasi dan instalasi yang rumit. Tentu saja
ini berarti juga Unmanaged Switch memiliki keterbatasan fitur dan
kapasitas jaringan yang lebih kecil. Di sisi lain yaitu Managed Switch.
Managed Switch dapat di konfigurasi secara lengkap, menawarkan
tingkat keamanan yang lebih tinggi, lebih fleksibel dan kapasitas
56
jaringan yang lebih besar. Managed Switch juga dapat dimonitor dan
diakses baik secara langsung di lokasi maupun secara remote.
› Switching Memory
Gambar 4.5 Tiga Teknik Switching
› Switching Bus
Gambar 4.6 Switching Bus
LAPISAN JARINGAN: DATA PLANE 57
› Switching Crossbar
Gambar 4.7 Switching Crossbar
2. Di mana antrian terjadi?
Paket antrian dapat terbentuk pada port input dan Port output lihat
gambar dibawah ini
Gambar 4.8 Pemrosesan Port Keluaran
3. Penjadwalan Paket
› First-in-First-Out (FIFO)
Algoritma ini merupakan algoritma penjadwalan yang paling
sederhana yang digunakan CPU. Dengan memakai algoritma
ini setiap proses yang berada pada status ready dimasukkan
58
kedalam FIFO queue atau antrian dengan prinsip first in first out,
sesuai dengan waktu kedatangannya. Proses yang tiba terlebih
dahulu yang akan dieksekusi.
Contoh penjadwalan FIFO
Gambar 4.9 Abstraksi Antrian FIFO
› Antrian Prioritas
Pada layer ini terletak semua aplikasi yang memakai TCP/IP
ini. Lapisan ini melayani permintaan pemakai untuk mengirim
dan menerima data. Data tersebut kemudian disampaikan ke
lapisan transport untuk diproses lebihlanjut. Contoh layanan
yang diberikan yaitu HTTP, FTP, dan SMTP. Contoh antrian
prioritas
Gambar 4.10 Antrean FIFO sedang beroperasi
› Round Robin dan Weight Fair Queuing (WFQ)
Di bawah disiplin round robin, paket diurutkan ke dalam
kelas-kelas seperti dengan antrian prioritas. Namun, daripada
ada prioritas layanan yang ketat di antara kelas, penjadwalan
round robin layanan alternatif antar kelas. Dalam bentuk paling
sederhana dari penjadwalan round robin, paket kelas 1 yaitu
LAPISAN JARINGAN: DATA PLANE 59
ditransmisikan, diikuti oleh paket kelas 2, diikuti oleh paket kelas
1, diikuti oleh paket kelas 2, dan seterusnya. Apa yang disebut
disiplin antrean hemat-kerja tidak akan pernah mengizinkan link
tetap diam setiap kali ada paket (dari kelas apa pun) yang antri
untuk transmisi. Round robin yang menghemat pekerjaan disiplin
yang mencari paket kelas tertentu tetapi tidak menemukannya
akan segera memeriksa kelas berikutnya di urutan round robin.
Gambar 4.11 Antrian Tertimbang Adil
C. Protokol Internet (IP): IPv4, Pengalamatan, IPv6, dan
Lainnya
Dalam penulisan IPv6 Anda bisa saja langsung meringkasnya apabila
menemui angka nol di depan atau yang biasanya disebut dengan
istilah leading zeroes. Apabila terdapat grup angka nol, Anda juga bisa
meringkasnya memakai teknik double colons. Lalu secara struktur,
penulisan alamat IPv6 dibagi menjadi Network prefix dengan interface ID.
Untuk network prefix merupakan alamat yang diberikan oleh RIP
(Regional Internet Registry) serta alokasi dari ISP untuk customer.
Sedangkan untuk Interface ID yaitu pengalamatan kepada sisi host atau
perangkat di dalam suatu jaringan. Khusus untuk pengalamatan Interface
ID, kita bisa juga menuliskannya secara subnetting.
Paket IPv6 terdiri dari dua bagian yakni paket header dan paket
payload. Ukuran dari paket header terdiri dari 40 oktet (320 bit) yang
isinya yaitu :
60
• Versi 4 bit
• Traffic class 8 bit
• Label flow 20 bit
• Panjang payload 16 bit
• Header 8 bit
• Batas HOP 8 bit
• Alamat tujuan 128 bit
• Alamat asal 128 bit
Ukuran panjang Payload yaitu 166 bit dan bisa juga membawa
payload maksimum 65535 oktet.
Gambar 4.12 Antrian Tertimbang Adil
1. Format Datagram IPv4
Paket-paket data dalam protokol IP dikirimkan dalam bentuk
datagram. Sebuah datagram IP terdiri atas header IP dan muatan IP
(payload), sebagai berikut:
› Header IP: Ukuran header IP bervariasi, yakni berukuran
20 hingga 60 byte, dalam penambahan 4-byte. Header IP
menyediakan dukungan untuk memetakan jaringan (routing),
identifikasi muatan IP, ukuran header IP dan datagram IP,
dukungan fragmentasi, dan juga IP Options.
LAPISAN JARINGAN: DATA PLANE 61
› Muatan IP: Ukuran muatan IP juga bervariasi, yang berkisar dari
8 byte hingga 65515 byte.
Header dari IP versi 4 terbagi menjadi 14 field yang memiliki
fungsi dan informasi yang berbeda, berikut ini yaitu sebagai
rinciannya :
› Nomor versi. 4 bit ini menentukan versi protokol IP dari datagram,
dengan ini router dapat menentukan bagaimana menafsirkan sisa
dari datagram IP.
› Panjang header. 4 bit ini diperlukan untuk menentukan dimana
dalam IP datagram playload sebenarnya dimulai.
› Jenis layanan. Jenis bit layanan dimasukkan dalam header
IPv4 untuk memungkinkan berbeda jenis datagram IP untuk
dibedakan satu sama lain.
› Panjang Datagram. Ini yaitu total panjang datagram IP, diukur
dengan format byte.
› Identifier, flags, fragmentasi mengimbangi.
› Time to Live (TTL). Disertakan untuk memastikan bahwa
datagram tidak bersirkulasi selamanya di jaringan.
› Protokol. Bidang ini biasanya digunakan hanya ketika datagram
IP mencapai tujuan akhirnya.
› Checksum header. Membantu router dalam mendeteksi
kesalahan bit dalam IP yang diterima datagram. Checksum
header dihitung dengan memperlakukan setiap 2 byte di header
sebagai angka dan menjumlahkan angka-angka ini memakai
aritmatika komplemen 1s.
› Alamat IP sumber dan tujuan. Saat sumber membuat datagram,
ia memasukkan alamat IP-nya ke dalam bidang alamat IP sumber
dan memasukkan alamat tujuan akhir ke dalam bidang alamat IP
tujuan.
› Pilihan. Bidang opsi memungkinkan header IP diperpanjang.
Opsi tajuk dimaksudkan untuk menjadi jarang digunakan, oleh
sebab itu keputusan untuk menghemat biaya overhead dengan
tidak menyertakan informasi dalam bidang opsi di setiap header
datagram.
62
2. IPv4 datagram fragmentasi
Gambar 4.13 Fragmentasi IP dan Perakitan Ulang
Fragmentasi dan Reassembly telah secara eksklusif dijelaskan
dalam RFC 791. Jangan melalui Spesifikasi Protokol Internet RFC.
RFC memiliki berbagai bagian yang menjelaskan fragmentasi sampel
dan pemasangan kembali. Semua keraguan dan pertanyaan Anda
terpenuhi dengan baik di dalamnya.
Jawab 1: Mengenai panjang paket: Paket asli berisi 4000 Bytes.
Paket ini yaitu paket IP sepenuhnya dan sebab nya berisi header IP
juga. Jadi panjang payload sebenarnya 4000 - (IP Header Length i. E.
20).
Panjang Payload Aktual = 4000 - 20 = 3980
Sekarang paket tersebut terfragmentasi sebab fakta bahwa
panjangnya lebih besar dari MTU (1500 Bytes).
Dengan demikian paket 1 berisi 1500 Bytes yang mencakup
header IP + Fraksi Payload.
1500 = 20 (header IP) + 1480 (Data Payload)
Demikian pula untuk paket lainnya.
Paket ketiga berisi sisa data yang tersisa (3980 - 1480 -1480) = 1020
Jadi panjang paket yaitu 20 (Header IP) + 1020 (payload) = 1040
LAPISAN JARINGAN: DATA PLANE 63
3. Pengalamatan IPv4
Dalam netwoking, pengalamatan IP merupakan hal yang sangat
penting sebab pengalamatan ini merupakan pengidentifikasian
suatu mesin pada jaringan sehingga memiliki identitas yang unik.
Untuk tulisan kali ini saya hanya membahas IPv4 (IP vesrsion 4)
Pengalamatan IP merupakan pengalamatan untuk jaringan untuk
layer 3 pada OSI model.
Alamat IPv4 terdiri dari 32 bit dan ditulis dalam bentuk dotted-
decimal. Dotted-decimal yaitu penulisan dengan memakai “.”
(titik/dot) sebagai pemisah antara bagian yang satu dengan lainnya,
misal 192.168.10.15. Tiap bagian terdiri dari 1 byte (8 bit) dan
disebut dengan octet. Pada ipv4 ini, alamat 32 bit ini dipisahkan
menjadi 2 bagian yaitu “Alamat Network” (Network portion) dan
“Alamat Host” (Host portion). Network portion merupakan identitas
dari sekumpulan host dimana hanya yang memeiliki alamat pada
host portion yang sama saja host-host dapat saling berkomunikasi.
Sedangkan host portion merupakan identitas unik yang dimiliki
sebuah mesin yang merupakan identitas dirinya.
Alamat IP yaitu nomor 32-bit yang secara unik mengidentifikasi
host (komputer atau perangkat lain, seperti printer atau router)
pada jaringan TCP/IP. Alamat IP biasanya dinyatakan dalam
format desimal bertitik, dengan empat angka dipisahkan oleh titik,
seperti 192.168.123.132. Untuk memahami bagaimana Subnet Mask
yang digunakan untuk membedakan antara host, Jaringan, dan
Subnetwork, periksa alamat IP dalam biner notasi. Sebagai contoh,
192.168.123.132 alamat IP desimal titik (dalam biner notasi) 32 bit
nomor 110000000101000111101110000100. Angka ini mungkin sulit
untuk dimengerti, jadi Bagilah menjadi empat bagian dari delapan
Digit biner. Bagian delapan bit ini dikenal sebagai oktet.
Contoh alamat IP, kemudian, menjadi 11000000.10101000.0111
1011.10000100.
64
Gambar 4.14 Alamat Antarmuka dan Subnet
4. Network Address Translation (NAT)
Network Address Translation (NAT) merupakan sebuah sistem untuk
menggabungkan lebih dari satu komputer yang dihubungkan ke
dalam jaringan internet hanya dengan memakai sebuah alamat
IP.
Gambar 4.15 DHCP Client dan Server
5. IPv6
Pada awal 1990-an, Internet Engineering Task Force memulai upaya
untuk mengembangkan penerus Protokol IPv4. Motivasi utama
untuk upaya ini yaitu kesadaran bahwa ruang alamat IPv4 32-bit
LAPISAN JARINGAN: DATA PLANE 65
mulai digunakan, dengan subnet dan node IP baru yang terpasang ke
Internet (dan sedang dialokasikan alamat IP unik) dengan kecepatan
yang menakjubkan. Untuk menjawab kebutuhan ini akan alamat IP
yang besar luar angkasa, protokol IP baru, IPv6, dikembangkan.
Format Datagram IPv6
› Kemampuan pengalamatan yang diperluas. IPv6 meningkatkan
ukuran alamat IP dari 32 menjadi 128 bit.
› Header 40-byte yang efisien. Header dengan panjang tetap 40-
byte yang dihasilkan memungkinkan pemrosesan IP yang lebih
cepat datagram oleh router. Pengodean opsi baru memungkinkan
pemrosesan opsi yang lebih fleksibel.
› Pelabelan aliran. IPv6 memiliki definisi aliran yang sulit
dipahami.
Gambar 4.16 IPv6 Datagram Format
Bidang berikut ditentukan di IPv6:
› Versi. Bidang 4-bit ini menunjukkan nomor versi IP. Tak heran,
IPv6 mengusung nilai 6 in lapangan ini.
› Kelas lalu lintas. Bidang kelas lalu lintas 8-bit, seperti bidang
TOS di IPv4, dapat digunakan sebagai prioritas datagram tertentu
dalam suatu aliran, atau dapat digunakan untuk memberikan
prioritas pada datagram dari tertentu aplikasi (misalnya, voice-
over-IP) melalui datagram dari aplikasi lain (misalnya, Email
SMTP).
66
› Label aliran. Bidang 20-bit ini digunakan untuk mengidentifikasi
aliran datagram.
› Panjang muatan. Nilai 16-bit ini diperlakukan sebagai integer
tak bertanda tangan yang memberikan jumlah byte dalam file
Datagram IPv6 mengikuti header datagram 40-byte dengan
panjang tetap.
› Header berikutnya. Bidang ini mengidentifikasi protokol
yang akan diisi konten (bidang data) datagram ini dikirimkan
(misalnya, ke TCP atau UDP). Bidang ini memakai nilai
yang sama dengan bidang protokol di header IPv4.
› Batas hop. Isi bidang ini dikurangi satu per satu oleh setiap router
yang meneruskan datagram. Jika jumlah batas hop mencapai nol,
datagram-nya yaitu dibuang.
› Data. Ini yaitu bagian payload dari datagram IPv6. Ketika
datagram mencapai tujuannya, payload akan dihapus dari
datagram IP dan diteruskan ke protokol yang ditentukan di
bidang tajuk berikutnya.
Berikut beberapa bidang yang muncul di datagram IPv4 tidak
lagi ada di file Datagram IPv6:
› Fragmentasi / perakitan kembali. IPv6 tidak mengizinkan
fragmentasi dan perakitan ulang di tingkat menengah router;
operasi ini hanya dapat dilakukan oleh sumber dan tujuan.
› Checksum header. sebab transport-layer (misalnya, TCP
dan UDP) dan link-layer (untuk Misalnya, Ethernet) protokol
di lapisan Internet melakukan checksumming, fungsi ini
cukup berlebihan di lapisan jaringan yang seharusnya dihapus.
Pemrosesan cepat paket IP menjadi perhatian utama
› Pilihan. Bidang opsi tidak lagi menjadi bagian dari header IP
standar. Namun, itu belum hilang jauh. Alih-alih, bidang opsi
yaitu salah satu dari kemungkinan tajuk berikutnya yang
ditunjuk dari dalam IPv6 header.
LAPISAN JARINGAN: DATA PLANE 67
Gambar 4.17 Tunneling
68
69
BAB 5
CONTROL PLANE
(PESAWAT KONTROL)
Logika Wide-Network yang mengontrol tidak hanya bagaimana datagram diteruskan di antara router sepanjang jalur end-to-end
dari host sumber ke host tujuan, tetapi juga bagaimana komponen dan
layanan lapisan jaringan dikonfigurasi dan dikelola. kita akan membahas
algoritma routing tradisional untuk menghitung jalur biaya paling sedikit
dalam sebuah grafik; algoritma ini yaitu dasar
.jpeg)
