Transmission Control Protocol (End-to-End Protocols)

dokumen-dokumen yang mirip
TCP DAN UDP. Budhi Irawan, S.Si, M.T

Fungsi Lapis Transport

Transport Layer El E ectro ect n ro ic En E gineerin ri g Pol o ytech tec nic In I stitu sti t of o Surabaya ITS Kampus ITS Sukolilo Surabaya 60111

TRANSPORT LAYER. Fikri Fadlillah, ST

Fungsi Lapis Transport

Minggu 6 Transport Layer

Rahmady Liyantanto liyantanto.wordpress.com

Materi Mata Kuliah Jaringan Komputer Universitas Indo Global Mandiri

Sejarah TCP/IP TCP/IP

Refrensi OSI

Transport Layer. Muhammad Zen S. Hadi, ST. MSc.

End-to-End Protocols (Simple Demultiplexer and Reliable Byte Stream)

Tugas. Menyusun paket Membuat koneksi Pengalamatan Menyediakan keandalan

Protokol TCP/IP. Oleh: Eko Marpanaji

Transport Layer. Oleh : Akhmad Mukhammad

Lapisan Transport. Menjamin komunikasi yang handal antara dua buah komputer yang terhubung Terdiri atas :

TRANSPORT LAYER. Aplikasi dan Operasi pada TCP dan UDP

ARSITEKTUR PROTOKOL TCP/IP

End-to-End Protocols (Week 12)

End-to-End Protocols (Week 12)

LAPORAN RESMI ADMINISTRASI & MANAGEMENT JARINGAN. PRAKTIKUM 3 Pemrograman Socket dengan TCP

Arsyad Dwiyankuntoko Pendahuluan. Lisensi Dokumen:

MODUL 2 WIRESHARK Protokol TCP

Monitoring Jaringan. Rijal Fadilah, S.Si

PEMROGRAMAN JARINGAN

JARINGAN KOMPUTER : ANALISA TCP MENGGUNAKAN WIRESHARK

JARINGAN KOMPUTER. 2. What is the IP address and port number used by gaia.cs.umass.edu to receive the file. gaia.cs.umass.edu :

MODUL 2 WIRESHARK Protokol TCP

BAB II DASAR TEORI. Teknologi TCP/IP adalah hasil penelitian dan pengembangan protocol

BAB II DASAR TEORI. 2.1 Pentingnya Efisiensi Energi pada Perangkat Komunikasi Bergerak

Modul 10 TCP/IP Lanjutan

FLOW CONTROL & ERROR CONTROL. Fungsi SUBLAYER LLC pada datalink

TRANSPORT LAYER DEFINISI

BAB 4 PROTOKOL JARINGAN KOMPUTER

Pemrograman Jaringan

KOMUNIKASI DATA Kontrol Komunikasi

Komunikasi Data Ala TCP/IP

NAMA : 1. HANDOKO DWI HARTONO ( ) 2. IMANUEL HASIOLAN SIMATUP ( ) 3. YOSUA MINANDO ( )

Bab 2. Protocol Lapisan Transport

lapisan-lapisan pada TCP/IP tidaklah cocok seluruhnya dengan lapisan-lapisan OSI.

BAB 2: INTRODUCTION TCP/IP

Wireshark TCP v.70. Nama : Akhmad Fariiqun Awwaluddin NRP : Kelas : 1 D4 LJ Teknik Informatika

Layer Transport OSI. Network Fundamentals Chapter 4. ITE PC v4.0 Chapter Cisco Systems, Inc. All rights reserved.

William Stallings Data and Computer Communications. Chapter 20 Transport Protocols

MODEL REFERENSI OSI & TCP/IP. Budhi Irawan, S.Si, M.T

Tugas Jaringan Komputer

SISTEM PROTOKOL PADA JARINGAN KOMPUTER

Amalia Zakiyah D4 LJ TI. Wireshark Lab : TCP

Bab 2. Protocol Lapisan Transport

DASAR KOMUNIKASI DATA

Deskripsi Layanan Protokol TCP dan UDP. (Tugas Mata Kuliah Jaringan Komputer) Nama: Azwar Hidayat NIM: Kelas: SK 4 C

Transport Layer Services Candra Setiawan

KOMUNIKASI DATA JUFRIADIF NA`AM. 10. Protocol Komunikasi

: M Rasyid Darmawan NIM : TCP. Pengertian TCP. Karakteristik TCP

PENGANTAR KOMPUTER & SOFTWARE I PROTOKOL JARINGAN KOMPUTER

KOMUNIKASI DATA sahari. 10. Protocol Komunikasi

OSI Data Link Layer. CCNA1-1 Chapter 7

Connectionless service UDP (User Datagram Protocol)

Jaringan Komputer Data Link Control Data L

We Can Start From Nothing

Analisis Paket Data Wireshark

Bab 7. Data Link Control

Agenda. Protokol TCP/IP dan OSI Keluarga Protokol TCP/IP

Large Scale Networks: Switching & Forwarding (Week 5)

JARINGAN KOMPUTER Layanan Dari TCP dan UDP Protocol

Protokol Jaringan. Oleh : Tengku Mohd Diansyah,ST,M.Kom

Pemrograman Jaringan

BAB II DASAR TEORI. jaringan komputer, ethernet controller, TCP/IP, MAC address, Sistem Embedded,

Sekar Langit

OSI memberikan pandangan yang "abstrak" dari arsitektur jaringan yang dibagi dalam 7 lapisan. Model ini diciptakan berdasarkan sebuah proposal yang

TUGAS JARINGAN KOMPUTER : REVIEW TCP/IP

JARINGAN KOMPUTER. Disusun Oleh : Nama : Febrina Setianingsih NIM : Dosen Pembimbing : Dr. Deris Stiawan, M.T., Ph.D.

Reza Muhammad

Tugas Jaringan Komputer

Networking Model. Oleh : Akhmad Mukhammad

TCP/IP (singkatan dari "Transmission Control Protocol")

Jaringan Komputer (IF8505) Data link layer. Materi. Prinsip dasar Peran data link layer Framing Error handling Flow control Contoh: HDLC, PPP

BAB II DASAR TEORI 2.1 Transmission Control Protocol

TASK V OBSERVING TCP/IP, PORT USING COMMAND PROMPT AND WIRESHARK

Mengenal Komunikasi Data Melalui Layer OSI & TCP/IP

Ukuran dan Konsep Evaluatif untuk FTP (File Transfer Protocol)

Pengenalan Komunikasi Data. Edi Suharto, Drs. M.Kom.

adalah sebuah aturan atau standar yang mengatur hubungan, komunikasi, dan perpindahan data antara dua atau lebih titik komputer dalam Komunikasi Data

Bab 2 STUDI PUSTAKA. Sebelum melakukan pengambilan paket, perlu diketahui mode pengambilan data yang dapat digunakan

AKUSISI DATA LEWAT PROTOCOL TCP/IP BERBASIS LABVIEW

SCTP (Stream Control Transmission Protocol) 1.1 SCTP

1. Pendahuluan. 2. Tinjauan Pustaka

BAB 2 LANDASAN TEORI

Referensi Model OSI & TCP/IP

Network Layer JARINGAN KOMPUTER. Ramadhan Rakhmat Sani, M.Kom

Materi 7 Layer 4 Transport

Metode Deteksi Terputusnya Koneksi Tcp Pada Receiving Host Berdasarkan Packet Inter-Arrival Timeout

REVIEW MODEL OSI DAN TCP/IP

Chapter 3 part 1. Internetworking (Switching and Bridging) Muhammad Al Makky

AMALIA ZAKIYAH 1 D4LJ-TI

Refrensi OSI. Standard ini dikembangkan untuk industri komputer agar komputer dapat berkomunikasi pada jaringan yang berbeda secara efisien.

LAPISAN TRANSPORT. Budhi Irawan, S.Si, M.T

TSI Perbankan TCP / IP SASARAN

1. Menggunakan model OSI dan TCP/IP dan protokol-protokol yang terkait untuk menjelaskan komunikasi data dalam network. 2. Mengidentifikasi dan

Muhammad Zen S. Hadi, ST. MSc.

Transkripsi:

Transmission Control Protocol (End-to-End Protocols) Jaringan Komputer (IKI-20240) Johny Moningka (moningka@cs.ui.ac.id) Fakultas Ilmu Komputer Universitas Indonesia Semester 2003/2004 Versi: 1.1 Agenda Apa yang telah dipelajari: Teknologi yang menghubungkan kumpulan komputer => jaringan: Direct links, packet switching, internet protocol (IP) Selanjutnya: Ekstensi koneksi dan penyampaian paket host-to-host => untuk komunikasi antar komputer yang terhubung dengan jaringan. Komunikasi aplikasi => antar proses melalui communication channel. Problem: Getting processes to communicate! (Ch. 5) User Datagram Protocol (UDP) Transmission Control Protocol (TCP) 1

Review: Layered Ingat: tujuan jaringan komputer, menghubungkan aplikasi => saling berkomunikasi Layer bawah mendukung komunikasi antar aplikasi untuk mencapai tujuan tsb. IP => hanya menyampaikan paket data ke host (bukan ke aplikasi, tidak ada alamat proses pada IP address). Transport Layer (OSI) => mendukung koneksi antar aplikasi (proses) End-System Mengapa disebut transport layer end-to-end protocol? Transport layer: hanya berada pada host (endsystem) End-system => user; asumsi: kontrol terakhir pengiriman data berada pada aplikasi. Services ke berbagai proses aplikasi Suatu host dapat mempunyai lebih dari satu proses (aplikasi) yang aktif Kebutuhan berbagai aplikasi berbeda; mis. reliable delivery vs unreliable delivery (low overhead) 2

Problems: Getting process to communicate! Kebutuhan aplikasi (reliable data stream): multiple koneksi per-host (sharing): lebih dari satu aplikasi aktif dapat mengirim messages ke jaringan (multiplexing) garansi penyampaian message, notifikasi jika terjadi error (mis. target aplikasi tidak aktif) error control: pemeriksaan kesalahan, berurut, dan sekali saja (tidak ada duplikasi) message size: tidak terbatas dengan ukuran paket (model stream) flow control: sinkronisasi antara aplikasi (proses) pengirim dan penerima Transmission Control Protocol (TCP) TCP menyediakan byte-stream services Aplikasi mengirim dalam urutan (stream) bytes, tidak ada batas antar data (tergantung program) TCP memilah streams dalam bentuk segments (paket) Aplikasi menerima dalam urutan bytes Application process Application process Write Bytes Read Bytes TCP TCP Send buffer Receive buffer Segment Segment Segment Transmit segments 3

TCP: Characteristics TCP is connection oriented 3 fase: connection setup, transfer data (bytestreams), disconnect TCP is reliable: Membagi data (bytes) dari aplikasi dalam kelompok segments (messages) Kontrol kesalahan pada setiap segments ACK delivery data Checksum deteksi kesalahan pada data Nomor urut (sequence bytes) jika terjadi duplikasi atau segment hilang. Retransmisi (sliding window) untuk mengatur pengiriman segments Transport vs. Data Link Layers OSI Ref.: keduanya reliable delivery data transmission Data Link: hanya menghubungkan dua nodes yang terhubung langsung (vs. Transport, melalui networks). Potentially connects many different hosts need explicit connection establishment and termination Potentially long delay in network need to be prepared for arrival of very old packets Potentially different network capacity need to be prepared for network congestion need not contribute to network congestion 4

Encapsulation of User Data User Data 20 bytes of TCP header TCP Header 20 bytes of IP header IP Header Figure 8.26 User data are encapsulated in TCP Segments. A TCP Segment is the unit of data for user messages TCP Segment Format 0 4 10 16 24 31 Source Port Destination Port Sequence Number Header Length Reserved Acknowledgement Number U RG A CK P SH R ST S YN F IN Window Size Checksum Options Urgent Pointer Padding Data Figure 8.20 5

TCP Segment Format (1) Source / Destination Ports (16b unsinged int): Identifikasi (address) proses (aplikasi): source & sink user application Sequence (Acknowledgement) Numbers (32b unsigned int): Number of first byte sent (expected from other side) in the segment to other side Acknowledgement Number is byte expected next (ACK) Header Length: in 32b words Reserved (0) TCP Segment Format (2) Flags: Informasi sesuai jenis paket TCP URG: urgent pointer is valid ACK: Acknowledgement number is valid PSH: deliver data received by receiving TCP immediately RST: Receving TCP must abort connection SYN: Connection Request; FIN: Sender has no more data to send to receiving TCP; ( Advertised ) Window Size: amount of data receiver is willing to accept. 6

TCP Segment Format (3) Urgent Pointer (if URG flag is set) points to last byte of urgent data; any data from beginning of segment to up are urgent TCP Segment Structure (Summary) 32 bits URG: urgent data ACK: ACK # valid PSH: push data now (generally not used) RST, SYN, FIN: connection estab (setup, teardown commands) Internet checksum (as in UDP) source port # dest port # sequence number acknowledgement number head not UAP R S F len used rcvr window size checksum ptr urgent data Options (variable length) application data (variable length) counting by bytes of data (not segments!) # bytes rcvr willing to accept 7

TCP: Connection Setup Active Open Umum: koneksi diawali dari client => mengirim tipe messages SYN (connection setup) ke server. Passive Open Server mendengar untuk koneksi dari client Server membalas dengan mengirim tipe message SYN+ACK Connection Establishment Two way handshake A send SYN, B replies with ACK-SYN SYN hilang, timeout dan retransmisi Bagaimana jika muncul delayed SYN (false connection)? Kemungkinan delayed SYN menyebabkan duplikasi SYNs => receiver? Mana yang valid Gunakan Three Way Handshake Gunakan identifikasi SYN dengan bilangan tertentu => Initial Sequence Number Gunakan SYN dan ISN Balasan ACK harus menunjuk ISN yang sama RFC 793: ISN harus increment setiap 4 mikro-detik. 8

TCP Connection Management TCP sender, receiver establish connection before exchanging data segments Initialize TCP variables: sequence numbers buffers, flow control info (e.g., RcvWindow) Three way handshake: Step 1: client end system sends TCP SYN control segment to server specifies initial sequence number Step 2: server end system receives SYN, replies with SYN- ACK control segment ACKs received SYN allocates buffers specifies server receiver initial sequence number. TCP: Connection Setup Reliability 3-way handshake Sequence Numbers: x, y (full duplex) Message types (Flag): Synchronize (SYN), Acknowledge (ACK) Active participant (client) SYN, SequenceNum = x SYN + ACK, SequenceNum = y, Acknowledgment = x + 1 ACK, Acknowledgment = y + 1 Passive participant (server) 9

Data Transfer: Sequence Numbers and ACKs Sequence Numbers: byte stream number of first byte in segment s data ACKs: seq. # of next byte expected from other side cumulative ACK Example next figure: telnet interaction; User types C host ACKs receipt of echoed C Simple telnet scenario Host A SN(42), ACK(79), data( C ) SN(79), ACK(43), data( C ) SN(43), ACK(80) Host B B ACKs receipt of C ; echoes back C time TCP Connections: Graceful Close Step 1: client end system sends TCP FIN control segment to server (client knows when input has finished) Step 2: server receives FIN, replies with ACK. Closes connection, sends FIN. TIME_WAIT closed Host A Host B FIN, SN(5086) FIN, SN(453), ACK(5087) ACK(454) Figure 8.27 10

TCP: Reliability Deteksi kesalahan: TCP Checksum Retransmisi segment kembali jika terjadi kesalahan Kontrol kesalahan: Penerima memberikan ACK untuk segment (byte) yang telah diterima Timer (jika ACK atau segment hilang) Flow control Kita ingin mengirim lebih dari satu segment (utilisasi koneksi), tanpa menunggu ACK segment sebelumnya Pengaturan supaya sender yang cepat tidak overflow receiver => sinkronisasi TCP: Flow control TCP Sliding Window + Flow Control: ( acknowledgment, SequenceNum, AdvertisedWindow ) Data (SequenceNum) Sender Receiver Acknowledgment + AdvertisedWindow 11

TCP: Advertised Window (Flow Control) Flow control Mencegah sender mengirim terlalu banyak sehingga melebihi kapasitas menerima dari receiver Negosiasi (informasi) ke sender => status dan kapasistas buffer dari receiver (proses) Menggunakan informasi: Advertised Window (field pada header TCP paket): Max. ukuran buffer receiver (sisa bytes yang belum dibaca oleh aplikasi) Dinamik, tergantung kecepatan aplikasi memproses data pada buffer receiver. 12