CHAPTER 9
Section 1
Peran Transport Layer
Lapisan
transport bertanggung jawab untuk membangun sesi komunikasi sementara antara
dua aplikasi dan mengirimkan data di antara keduanya. Aplikasi menghasilkan
data yang dikirim dari aplikasi pada host sumber ke aplikasi pada host tujuan.
Ini tanpa memperhatikan jenis host tujuan, jenis media yang harus dilalui data,
jalur yang diambil oleh data, kemacetan pada tautan, atau ukuran jaringan.
Seperti yang ditunjukkan pada gambar, lapisan transport adalah penghubung
antara lapisan aplikasi dan lapisan bawah yang bertanggung jawab untuk
transmisi jaringan.
Tanggung Jawab Transport Layer
Melacak Percakapan Individual
Pada
lapisan transport, setiap kumpulan data yang mengalir antara aplikasi sumber
dan aplikasi tujuan dikenal sebagai percakapan. Sebuah host mungkin memiliki
beberapa aplikasi yang berkomunikasi melalui jaringan secara bersamaan.
Masing-masing aplikasi ini berkomunikasi dengan satu atau lebih aplikasi pada
satu atau lebih host jarak jauh. Lapisan transport bertanggung jawab untuk
memelihara dan melacak banyak percakapan ini.
Segmentasi Data dan Pemasangan Kembali Segmen
Data
harus disiapkan untuk dikirim melalui media dalam bentuk yang dapat diatur.
Sebagian besar jaringan memiliki batasan jumlah data yang dapat dimasukkan ke
dalam satu paket. Protokol lapisan transport memiliki layanan yang
mensegmentasi data aplikasi menjadi blok dengan ukuran yang sesuai. Layanan ini
mencakup enkapsulasi yang diperlukan pada setiap bagian data.
Mengidentifikasi Aplikasi
Untuk
melewatkan aliran data ke aplikasi yang tepat, lapisan transport harus mengidentifikasi
aplikasi target. Untuk mencapai ini, lapisan transport memberikan setiap
aplikasi pengenal yang disebut nomor port. Setiap proses perangkat lunak yang
perlu mengakses jaringan diberikan nomor port yang unik untuk host tersebut.
Konversasi Multiplexing
Mengirimkan
beberapa jenis data (misalnya, video streaming) melalui jaringan, sebagai satu
aliran komunikasi lengkap, dapat menghabiskan semua bandwidth yang tersedia.
Ini kemudian akan mencegah komunikasi lain terjadi pada waktu yang sama. Ini
juga akan mempersulit pemulihan kesalahan dan pengiriman ulang data yang rusak.
Untuk
mengidentifikasi setiap segmen data, lapisan transport menambahkan header yang
berisi data biner yang diatur ke dalam beberapa bidang. Nilai-nilai di bidang
inilah yang memungkinkan berbagai protokol lapisan transport untuk melakukan
fungsi yang berbeda dalam mengelola komunikasi data.
Reliabilitas Transport Layer
Lapisan
transport juga bertanggung jawab untuk mengelola persyaratan keandalan
percakapan. Aplikasi yang berbeda memiliki persyaratan keandalan transportasi
yang berbeda pula.
IP
hanya berkaitan dengan struktur, pengalamatan, dan perutean paket. IP tidak
menentukan bagaimana pengiriman atau pengangkutan paket berlangsung. Protokol
transport menentukan cara mentransfer pesan antar host. TCP / IP menyediakan
dua protokol lapisan transport, Transmission Control Protocol (TCP) dan User
Datagram Protocol (UDP), seperti yang ditunjukkan pada gambar. IP menggunakan
protokol transport ini untuk memungkinkan host berkomunikasi dan mentransfer
data.
TCP
Transport
TCP dapat dianalogikan sebagai pengiriman paket yang dilacak dari sumber ke
tujuan. Jika pesanan pengiriman dipecah menjadi beberapa paket, pelanggan dapat
mengecek secara online untuk melihat pesanan pengiriman.
Dengan
TCP, ada tiga operasi dasar keandalan:
-Penomoran
dan pelacakan segmen data yang dikirimkan ke host tertentu dari aplikasi
tertentu
-Mengakui
data yang diterima
-Mengirim
ulang data yang tidak diakui setelah jangka waktu tertentu
UDP
Meskipun
fungsi keandalan TCP menyediakan komunikasi yang lebih kuat antar aplikasi,
fungsi tersebut juga menimbulkan overhead tambahan dan kemungkinan penundaan
transmisi. Ada trade-off antara nilai keandalan dan beban yang dibebankan pada
sumber daya jaringan. Menambahkan overhead untuk memastikan keandalan beberapa
aplikasi dapat mengurangi kegunaan aplikasi dan bahkan dapat merugikan. Dalam
kasus seperti itu, UDP adalah protokol transport yang lebih baik.
UDP
menyediakan fungsi dasar untuk mengirimkan segmen data antara aplikasi yang
sesuai, dengan sedikit biaya tambahan dan pemeriksaan data. UDP dikenal sebagai
protokol pengiriman upaya terbaik. Dalam konteks jaringan, pengiriman upaya
terbaik disebut tidak dapat diandalkan karena tidak ada pengakuan bahwa data telah
diterima di tempat tujuan. Dengan UDP, tidak ada proses lapisan transport yang
menginformasikan pengirim tentang pengiriman yang berhasil.
Fitur TCP
Membangun Sesi
TCP
adalah protokol berorientasi koneksi. Protokol berorientasi koneksi adalah
protokol yang menegosiasikan dan menetapkan koneksi permanen (atau sesi) antara
perangkat sumber dan tujuan sebelum meneruskan lalu lintas apa pun. Melalui
pembentukan sesi, perangkat menegosiasikan jumlah lalu lintas yang dapat
diteruskan pada waktu tertentu, dan data komunikasi antara keduanya dapat
dikelola dengan cermat.
Pengiriman yang Andal
Dalam
istilah jaringan, keandalan berarti memastikan bahwa setiap segmen yang dikirim
sumber tiba di tempat tujuan. Karena berbagai alasan, ada kemungkinan segmen
rusak atau hilang sama sekali, saat dikirimkan melalui jaringan.
Pengiriman Pesanan Sama
Karena
jaringan mungkin menyediakan beberapa rute yang dapat memiliki kecepatan
transmisi berbeda, data dapat sampai dalam urutan yang salah. Dengan penomoran
dan pengurutan segmen, TCP dapat memastikan bahwa segmen ini dipasang kembali
ke urutan yang benar.
Flow control
Host
jaringan memiliki sumber daya yang terbatas, seperti memori dan daya
pemrosesan. Ketika TCP menyadari bahwa sumber daya ini kelebihan pajak, TCP
dapat meminta aplikasi pengirim untuk mengurangi laju aliran data. Ini
dilakukan oleh TCP yang mengatur jumlah data yang dikirim sumber. Kontrol
aliran dapat mencegah kebutuhan untuk transmisi ulang data ketika sumber host
penerima kewalahan.
Fitur UDP
User
Datagram Protocol (UDP) dianggap sebagai protokol pengangkutan upaya terbaik.
UDP adalah protokol transport ringan yang menawarkan segmentasi data dan
perakitan ulang yang sama seperti TCP, tetapi tanpa keandalan dan kontrol
aliran TCP. UDP adalah protokol sederhana yang biasanya dijelaskan dalam
istilah apa yang tidak dilakukannya dibandingkan dengan TCP.
Beberapa Percakapan Terpisah
Lapisan
transport harus dapat memisahkan dan mengelola banyak komunikasi dengan
kebutuhan kebutuhan transportasi yang berbeda. Pengguna berharap dapat menerima
dan mengirim email dan pesan instan secara bersamaan, melihat situs web, dan
melakukan panggilan telepon VoIP. Masing-masing aplikasi ini mengirim dan
menerima data melalui jaringan pada waktu yang sama, meskipun persyaratan
keandalannya berbeda. Selain itu, data dari panggilan telepon tidak diarahkan
ke browser web, dan teks dari pesan instan tidak muncul dalam email.
TCP
dan UDP mengelola beberapa percakapan simultan ini dengan menggunakan bidang
header yang dapat mengidentifikasi aplikasi ini secara unik. Pengenal unik ini
adalah nomor porta.
Nomor Port
Nomor
port sumber dikaitkan dengan aplikasi asal pada host lokal. Nomor port tujuan
dikaitkan dengan aplikasi tujuan pada host jarak jauh.
Source Port
Nomor
port sumber secara dinamis dibuat oleh perangkat pengirim untuk
mengidentifikasi percakapan antara dua perangkat. Proses ini memungkinkan
banyak percakapan terjadi secara bersamaan. Biasanya perangkat mengirim
beberapa permintaan layanan HTTP ke server web secara bersamaan. Setiap
percakapan HTTP terpisah dilacak berdasarkan port sumber.
Destination Port
Klien
menempatkan nomor port tujuan di segmen untuk memberi tahu server tujuan
layanan apa yang diminta, seperti yang ditunjukkan pada gambar. Misalnya,
ketika klien menentukan port 80 di port tujuan, server yang menerima pesan
mengetahui bahwa layanan web sedang diminta. Sebuah server dapat menawarkan
lebih dari satu layanan secara bersamaan seperti layanan web pada port 80 pada
saat yang sama menawarkan pembentukan koneksi File Transfer Protocol (FTP) pada
port 21.
Section 2
Proses Server TCP
Setiap
proses aplikasi yang berjalan di server dikonfigurasi untuk menggunakan nomor
port, baik secara default atau manual, oleh administrator sistem. Server
individu tidak dapat memiliki dua layanan yang ditetapkan ke nomor port yang
sama dalam layanan lapisan transport yang sama.
Pembentukan Koneksi TCP
Aksi
berjabat tangan dipahami kedua belah pihak sebagai isyarat sapaan akrab.
Koneksi di jaringan serupa. Dalam koneksi TCP, klien host membuat koneksi
dengan server.
Sambungan
TCP dibuat dalam tiga langkah:
Langkah 1 - Klien yang memulai meminta sesi komunikasi klien-ke-server dengan
server.
Langkah 2 - Server mengakui sesi komunikasi klien-ke-server dan meminta sesi
komunikasi server-ke-klien.
Langkah 3 - Klien yang memulai mengakui sesi komunikasi server-ke-klien.
Terminasi Sesi TCP
Untuk
menutup koneksi, bendera kontrol Selesai (FIN) harus disetel di header segmen.
Untuk mengakhiri setiap sesi TCP satu arah, jabat tangan dua arah, yang terdiri
dari segmen FIN dan segmen Pengakuan (ACK), digunakan. Oleh karena itu, untuk
mengakhiri percakapan tunggal yang didukung oleh TCP, diperlukan empat
pertukaran untuk mengakhiri kedua sesi.
Langkah 1 - Ketika klien tidak memiliki lebih banyak data untuk dikirim dalam
aliran, ia mengirimkan segmen dengan set bendera FIN.
Langkah 2 - Server mengirimkan ACK untuk mengakui penerimaan FIN untuk mengakhiri
sesi dari klien ke server.
Langkah 3 - Server mengirimkan FIN ke klien untuk mengakhiri sesi server-ke-klien.
Langkah 4 - Klien merespons dengan ACK untuk mengakui FIN dari server.
Reliabilitas TCP – Pengiriman Yang Dipesan
Segmen
TCP mungkin tiba di tujuannya karena rusak. Agar pesan asli dapat dipahami oleh
penerima, data di segmen ini disusun kembali menjadi urutan aslinya. Nomor
urutan ditetapkan di header setiap paket untuk mencapai tujuan ini. Nomor
urutan mewakili byte data pertama dari segmen TCP.
Selama
penyetelan sesi, nomor urutan awal (ISN) ditetapkan. ISN ini mewakili nilai
awal byte untuk sesi ini yang dikirimkan ke aplikasi penerima. Saat data
ditransmisikan selama sesi, nomor urut bertambah dengan jumlah byte yang telah
dikirim. Pelacakan byte data ini memungkinkan setiap segmen untuk
diidentifikasi dan diakui secara unik. Segmen yang hilang kemudian dapat
diidentifikasi.
Nomor
urutan segmen menunjukkan cara memasang kembali dan menyusun ulang segmen yang
diterima, seperti yang ditunjukkan pada gambar.
Proses
menerima TCP menempatkan data dari segmen ke buffer penerima. Segmen
ditempatkan dalam urutan urutan yang benar dan diteruskan ke lapisan aplikasi
saat dipasang kembali. Setiap segmen yang datang dengan nomor urut yang rusak
akan ditahan untuk diproses nanti. Kemudian, ketika segmen dengan byte yang
hilang tiba, segmen ini diproses secara berurutan.
TCP Flow Control - Ukuran window dan Pengakuan
TCP
juga menyediakan mekanisme untuk kontrol aliran, jumlah data yang dapat
diterima dan diproses oleh tujuan dengan andal. Kontrol aliran membantu menjaga
keandalan transmisi TCP dengan menyesuaikan laju aliran data antara sumber dan
tujuan untuk sesi tertentu. Untuk melakukannya, header TCP menyertakan bidang
16-bit yang disebut ukuran jendela.
Ukuran
jendela awal disepakati saat sesi TCP dibuat selama jabat tangan tiga arah.
Perangkat sumber harus membatasi jumlah byte yang dikirim ke perangkat tujuan
berdasarkan ukuran jendela tujuan. Hanya setelah perangkat sumber menerima
pengakuan bahwa byte telah diterima, dapatkah perangkat terus mengirimkan lebih
banyak data untuk sesi tersebut. Biasanya, tujuan tidak akan menunggu semua
byte untuk ukuran jendelanya diterima sebelum membalas dengan pengakuan. Saat
byte diterima dan diproses, tujuan akan mengirim ucapan terima kasih untuk
memberi tahu sumber bahwa ia dapat terus mengirim byte tambahan.
Proses
tujuan pengiriman ucapan terima kasih saat memproses byte yang diterima dan
penyesuaian berkelanjutan dari jendela pengiriman sumber dikenal sebagai
jendela geser.
Jika
ketersediaan ruang buffer tujuan berkurang, itu dapat mengurangi ukuran
jendelanya untuk memberi tahu sumber untuk mengurangi jumlah byte yang harus
dikirim tanpa menerima pengakuan.
UDP Low Overhead Versus Reliability
UDP
adalah protokol sederhana yang menyediakan fungsi lapisan transport dasar. Ini
memiliki overhead yang jauh lebih rendah daripada TCP karena tidak berorientasi
koneksi dan tidak menawarkan transmisi ulang, pengurutan, dan mekanisme kontrol
aliran yang memberikan keandalan. Overhead UDP yang rendah membuatnya sangat
diinginkan untuk protokol yang membuat transaksi balasan dan permintaan
sederhana. Jika ada masalah dengan permintaan atau balasan, perangkat hanya
mengirim permintaan lagi jika tidak ada tanggapan yang diterima.
UDP Server Process and Request
Seperti
aplikasi berbasis TCP, aplikasi server berbasis UDP diberikan nomor port yang
terkenal atau terdaftar, seperti yang ditunjukkan pada gambar. Ketika aplikasi
atau proses ini berjalan di server, mereka menerima data yang cocok dengan
nomor port yang ditetapkan. Ketika UDP menerima datagram yang ditujukan untuk
salah satu port ini, UDP meneruskan data aplikasi ke aplikasi yang sesuai
berdasarkan nomor portnya.
UDP Client Process
Seperti
TCP, komunikasi klien-server dimulai oleh aplikasi klien yang meminta data dari
proses server. Proses klien UDP secara dinamis memilih nomor port dari kisaran
nomor port dan menggunakan ini sebagai port sumber untuk percakapan. Port
tujuan biasanya merupakan nomor port terkenal atau terdaftar yang ditetapkan ke
proses server.
Setelah
klien memilih port sumber dan tujuan, pasangan port yang sama digunakan di
header semua datagram yang digunakan dalam transaksi. Untuk data yang
dikembalikan ke klien dari server, nomor port sumber dan tujuan di header
datagram dibalik.
Aplikasi yang Menggunakan TCP
TCP
adalah contoh yang bagus tentang bagaimana berbagai lapisan rangkaian protokol
TCP / IP memiliki peran khusus. TCP menangani semua tugas yang terkait dengan
membagi aliran data menjadi beberapa segmen, memberikan keandalan, mengontrol
aliran data, dan menyusun ulang segmen. TCP membebaskan aplikasi dari keharusan
untuk mengelola salah satu tugas ini.
Aplikasi Yang Menggunakan UDP
Ada
tiga jenis aplikasi yang paling cocok untuk UDP:
Video langsung dan aplikasi multimedia - Dapat mentolerir kehilangan data,
tetapi memerlukan sedikit atau tanpa penundaan. Contohnya termasuk VoIP dan
video streaming langsung.
Aplikasi permintaan dan balasan sederhana - Aplikasi dengan transaksi sederhana
di mana tuan rumah mengirim permintaan dan mungkin atau mungkin tidak menerima
balasan. Contohnya termasuk DNS dan DHCP.
Aplikasi yang menangani sendiri keandalannya - Komunikasi searah di mana kontrol
aliran, deteksi kesalahan, pengakuan, dan pemulihan kesalahan tidak diperlukan
atau dapat ditangani oleh aplikasi. Contohnya termasuk SNMP dan TFTP.
Meskipun
DNS dan SNMP menggunakan UDP secara default, keduanya juga dapat menggunakan
TCP. DNS akan menggunakan TCP jika permintaan DNS atau tanggapan DNS lebih dari
512 byte, seperti ketika tanggapan DNS menyertakan resolusi nama dalam jumlah
besar. Demikian pula, dalam beberapa situasi, administrator jaringan mungkin
ingin mengkonfigurasi SNMP untuk menggunakan TCP.
Komentar
Posting Komentar