Chapter 4 Oktober 2010
Transport layer Men-enkapsulasi data aplikasi untuk dapat digunakan oleh Network layer. Memungkinkan beberapa aplikasi untuk berkomunikasi melalui jaringan pada waktu yang sama pada satu perangkat
Transport layer Memastikan bahwa, jika diperlukan, semua data yang diterima berupa data yang andal dan dalam urutan untuk aplikasi yang benar Menggunakan mekanisme penanganan kesalahan
Learning Objectives Perlunya Transport layer. Memberikan end-to-end transfer dari data antara aplikasi yang satu ke yang lain. Protokol Transport layer untuk TCP/IP : TCP and UDP.
Learning Objectives Fungsi dari Transport layer : reliability, port addressing, dan segmentation. Bagimana TCP and UDP masing-masing dapat menangani fungsi kunci. Penggunaan TCP atau UDP serta contoh-contohnya.
Transport layer
Maksud dari transport layer Tracking Individual Conversations maintain multiple communications stream antar aplikasi Segmenting Data men-enkapsulasi data ke bentuk segment Reassembling Segments rekonstruksi kembali ke bentuk stream data yang lengkap Identifying the Applications dengan port number
Transport layer
Transport layer Aplikasi mengirimkan data dari satu aplikasi ke aplikasi yang lain tidak perlu tahu tipe host tujuan, media yang dilewati atau jalur yang dilewati Sedangkan lower layer : tidak perlu tahu aplikasi yang dilewatkan. Hanya perlu memperhatikan dengan cara apa data tersebut dikirimkan.
Transport Layer Ada aplikasi yang berbeda-beda untuk kebutuhan yang berbeda-beda sehingga adanya beberapa protocol transport layer Misal : protocol yang mempunyai fungsi dasar pengiriman data yang efisien, pengiriman data yang reliable
Separating Multiple Communications
Separating Multiple Communications Banyak aplikasi yang dikirimkan bersama Sampai pada tujuan sesuai aplikasi Transport layer melakukan segmentasi Tanpa segmentasi, hanya satu aplikasi yang diterima
Roles of transport layer
Roles of transport layer Sekumpulan potongan (berita) yang mengalir dari sumber ke tujuan dikenal sebagai conversation Bagaimana mengatur ‘conversation’ ?
Controlling the conversation
Controlling the conversation Fungsi utama Transport Layer Protocols: Segmentation & Reassembly Connection-oriented conversations Reliable delivery Ordered data reconstruction Flow control Conversation multiplexing Adanya port number menentukan aplikasi/service
Controlling a conversation
Controlling a conversation Establishing a Session menghasilkan session antara aplikasi Reliable Delivery retransmission Same order Delivery reassembling Flow control kemampuan setiap mesin berbeda
Controlling a conversation A Transport layer protocol menjamin reliable delivery dari data. Dalam bahasa jaringan, reliability : menjamin bahwa setiap potongan data yang dikirimkan sumber, sampai pada tujuan. Yang dilakukan adalah : tracking transmitted data acknowledging received data retransmitting any unacknowledged data
Transport Layer Role and Services Supporting Reliable Communication
Supporting Reliable Communication Fungsi dari transport layer : Manage application data pertukaran aplikasi data antar host Untuk pengiriman yang reliable perlu additional overhead karena : Tracking ACK Retransmit
TCP dan UDP 2 protocol yang ada pada transport layer: TCP : Tansmission Control Protocol UDP : User Datagram Protocol
UDP User Datagram Protocol Simple Connectionless Protocol Digambarkan pada RFC 768 Low Overhead Delivery Potongan dari komunikasi pada UDP disebut Datagram
UDP Aplikasi yang menggunakan UDP : DNS Video Streaming VoIP
TCP Transmission Control Protocol Connection Oriented Digambarkan pada RFC 793 Ada additional function additional overhead Same order delivery Reliable delivery Flow-control Potongan komunikasi TCP disebut segment
TCP Aplikasi yang menggunakan TCP adalah : Web Browser E-mail File Transfer
TCP dan UDP
Port Addressing Untuk identifikasi conversation Identifier yang unik yang dimiliki TCP dan UDP adalah port number Setiap segmen/datagram mempunyai source port dan destination port Source port port pengiriman Destination port yang dituju Penentukan no port bervariasi, ada statik dan dinamik
Port Addressing
Port Addressing
Port Addressing
Port Addressing
Port Addressing Ada beberapa tipe port number: Well Known Ports (Numbers 0 to 1023) – Nomer-nomer ini dipesan untuk service dan aplikasi. Contoh : HTTP (web server) POP3/SMTP (e-mail server) danTelnet. Registered Ports (Numbers 1024 to 49151) – Ini untuk proses user atau aplikasi. Kalau tidak dipakai untuk server resouce, maka dapat juga digunakan untuk client yang dipilih secara dinamik untuk source port.
Port Addressing Ada beberapa tipe port number: Dynamic or Private Ports (Numbers 49152 to 65535) – Atau disebut dengan Ephemeral Ports, umumnya secara dinamik diberikan ke client untuk aplikasi saat memulai koneksi. User tidak biasa koneksi dengan server menggunakan port ini.
Port Addressing Menggunakan baik TCP maupun UDP Untuk beberapa aplikasi, digunakan baik TCP maupun UDP. Misalnya, DNS untuk client yang segera minta dilayani menggunakan UDP, sedangkan bila informasi yang diminta memerlukan reliability, maka menggunakan TCP.
Segmentation dan reassembly Membagi data aplikasi ke potongan-potongan akan menjamin bahwa data tersebut dapat dikirimkan lewat batasan media dan juga data dari aplikasi yang berbeda dapat dimultiplex. TCP dan UDP berbeda menangani segmentasi.
Segmentation dan reassembly TCP header pada segment terdiri dari sequence number untuk reassembly UDP tidak less overhead Harus memaklumi bahwa data tidak datang dengan urutan yang seharusnya
Segmentation dan reassembly
TCP : Reliability Dengan connection oriented session Koneksi seperti ini memungkinkan diadakan tracking dari session Proses ini menjamin bahwa setiap host sadar dan mempersiapkan komunikasi Memerlukan establishment dari session
TCP : Reliability Setelah establish destination mengirimkan ack ACK basis reliability dari TCP session Bila source tidak menerima ACK retransmit Overhead ack dan retransmit
TCP Header
TCP Header Ke 4.2.1.1
TCP Server Process Proses aplikasi berjalan di server Server menunggu client untuk me-request atau memulai komunikasi Diperlukan port number Sebuah server tidak dapat mempunyai 2 service yang diberikan ke port dengan no yang sama pada layanan transport layer yang sama
TCP Server Process
TCP Server Process
TCP Server Process
TCP Server Process
TCP Server Process
Circuit Switching Packet Switching
TCP Connection Establishment and Termination Setiap kali koneksi terjadi dua one-way connection. Untuk membentuk session, dilakukan 3 way handshake: Memastikan bahwa destination device berada pada jaringan Verifikasi bahwa destination device adalah service yang aktif dan menerima request pada destination port number Memberitahu destination device bahwa sumber dapat membentuk session dengan port number tersebut.
TCP Connection Establishment and Termination
TCP Connection Establishment and Termination
TCP Connection Establishment and Termination
TCP Connection Establishment and Termination
TCP Connection Establishment and Termination
TCP Connection Establishment and Termination
TCP Connection Establishment and Termination
TCP Connection Establishment and Termination
TCP Connection Establishment and Termination
TCP Three-Way Handshake Step 1 SYN : Synchronous Sequence Number
TCP Three-Way Handshake Step 2
TCP Three-Way Handshake Step 3
TCP Session Termination (FIN)
TCP Session Termination (ACK)
Managing TCP Sessions Saat sampai di tujuan, segmen yang dikirimkan mungkin dalam keadaan yang tidak terurut harus diurutkan dulu Masuk ke receiving buffer Diurutkan berdasarkan nomor urut (sequence number)
Managing TCP Sessions
Managing TCP Sessions Fungsi TCP setiap segmen sampai pada tujuan Destination memberikan ACK Sequence number dan ack number digunakan untuk menkonfirmasi data yang akan diterima
Managing TCP Sessions ACK number dari tujuan menunjukkan next byte yang diharapkan diterima untuk pengiriman berikutnya expectational ack Window size TCP menggunakan window size untuk menentukan jumlah segmen yang dikirim oleh pengirim sebelum penerima mengirimkan ACK
Managing TCP Sessions
Managing TCP Sessions Lihat 4.3.3.
TCP congestion control – Minimizing segment loss
TCP congestion control – Minimizing segment loss
UDP Protocol
UDP Protocol
UDP Protocol
UDP Protocol
Summary