Transport layer bertugas melakukan komunikasi antara komputer dalam jaringan dengan menggunakan dua protokol, yaitu TCP dan UDP. TCP bersifat connection-oriented dan menjamin sampainya data sedangkan UDP bersifat connectionless tanpa pengakuan penerimaan data. Kedua protokol menggunakan port dan socket untuk mengidentifikasi aplikasi sumber dan tujuan komunikasi.
Aplikasi Chatting dengan Client-Server Menggunakan Protokol TCP
Transpot layer
1. JARINGAN KOMPUTER TRANSPOT
Dibimbing Oleh:
LAYER
DISUSUN OLEH:
FIRMAN ARIFIN, ST, MT
AJI SETYO R. 7112040506
A. WILDANI A. 711204050
D4 LJ TEKNIK ELEKTRONIKA 2012-2013
1
3. 3
OVERVIEW
Layer Transport bertugas melakukan sesi
komunikasi antara komputer dalam jaringan.
Meneneruskan bagaimana data ditransmisikan.
Dua Protocol Transport Layer yang dipakai :
Transmission Control Protocol (TCP)
User Datagram Protocol (UDP).
4. 4
Transmission Control Protocol
(TCP)
Connection-oriented dan reliable communication
yang artinya data dijamin sampai tujuan
Untuk menjamin diperlukan komunikasi awal dengan
penerima sebelum transfer data dilakukan
Membutuhkan acknoledgement setiap penerimaan
data
Dipakai untuk mentransmisikan data dalam jumlah
besar
5. 5
User Datagram Protocol (UDP)
UDP merupakan connectionless communication,
bekerja tidak menjamin data sampai ditujuan secara
utuh.
Normalnya untuk mentransmisikan data dalam
jumlah kecil pada satu waktu.
Reliabilitasnya/penjaminan data sampai pada
penerima tergantung dari aplikasi.
6. 6
Port and Socket
Ada dua komponen yang biasa dipakai selama komunikasi pada layer transport yaitu
port dan socket
Port
Port bisa dikatakan internal address yang disediakan untuk aplikasi tertentu pada
komputer. Setiap aplikasi mempunyai port yang berbeda
Port bisa TCP atau UDPt, tergantung pada pemakaian protocol apa pada layer
transport apakah Udp atau TCP
Nomor Port antara 0 and 65,535.
Aplikasi TCP/IP biasanya menggunakan nomor port dibawah 1,024, dimana setiap
aplikasi biasanya nomornya sudah pasti. Port ini biasa disebut "Well-Known Ports".
Socket
Merupakan kombinasi dari IP address dan TCP atau UDP port.
Aplikasi men-generate socket ketika berkomunikasi dengan komputer lain
IP address menentukan tujuan komputer dan Port menentukan aplikasi yang dipakai.
7. 7
User Datagram Protocol (UDP)
UDP merupakan protokol connectionless, artinya tidak ada sesi komunikasi
awal ketika data ditransmisikan.
UDP merupakan unreliable protokol. Berarti pesan yang dikirim tanpa ada
nomor urut dan tanpa acknowledgment dari penerima sehingga pengirim
tidak pernah tahu apakah pesan sudah diterima penuh atau tidak. Untuk
masalah ini ditangani oleh aplikasi
Jika terjadi Lost paket data harus di-retrieve oleh layer diatasnya (aplikasi).
Biasanya message UDP ditransmisikan secara regular dalam interval waktu
tertentu atau setelah ditentukan batas waktu habis
Hanya membutuhkan sedikit resource memori dan processor
Contoh aplikasi yang menggunakan Protocol UDP Domain Name
System(DNS) dan Dynamic Host Configuration Protocol(DHCP).
9. 9
IP Datagram
Message UDP ditransmisikan dalam bentuk IP
datagrams.
Message UDP, terdiri dari :
IP Header
UDP header
Payload
IP header terdiri dari Source IP dan Destination IP :
Source IP berisi IP address host yang mengirim paket
Destination IP merisi alamat penerima paket, bisa
broadcast address atau multicast address.
11. 11
Struktur Header UDP
Header UDP header mempunyai panjang yang tetap yaitu 8
bytes, Terdiri dari 4 field : Son Port, Length field dam Checksum
Source Port terdiri dari 2 yang mengidentifikasi Port pengirim
yang dipakai untuk mentransmisikan data. Source Port
merupakan optional bisa diisi bisa tidak, jika tidak diisi diset 0.
Misal pengirim data video yang tidak butuh reply/pengiriman
balik
Destination Port, berisi Port tujuan yang dikirimi data.
Gabungan Destination IP dan Destination Port membentuk
Socket.
Length field mengindikasikan panjang Header UDP.
Checksum field, menyediakan integriti checker. Optional, jika
diset 0 berarti tidak dipakai, Pengirim tidak melakukan proses
perhitungan.
12. 12
TCP Overview
TCP merupakan protocol connection-oriented, yang artinya data hanya bisa
ditransmisikan setelah ada proses negosiasi terlebih dahulu antara pengirim
dan penerima
Negosiasi diantaranya berupa : Berapa data yang bisa dikirim dalam satu
waktu, nomor urut yang dipakai setiap pengiriman data dll.
TCP biasanya merupakan komunikasi fully duplex, yang artinya Setiap host
yang berkomunikasi mempunyai dua chanel logical untuk mengirim dan
menerima message
TCP Menyediakan transmisi data yang reliable, dengan cara.
Setiap paket data diberi sequence number, dan positive acknowledgement
oleh receiver is expected, jika tidak harus retransmite data
Receiver akan membuang jika terjadi duplikasi data, dan resequences packets
jika kedatangan tidak urut
13. 13
Flow Control
Selain itu, TCP mensupport Flow Control untuk
menghindari terlalu banyak data yang dikirim pada
satu waktu dan overload pada jaringan router
Flow Control artinya harus ada kesepakatan
berada besar data yang dikirim dalam satu waktu
antara pengirim dan penerima.
Flow Control mengindikasikan ukuran buffer
penerima yang free yang bisa diisi dalam waktu
tertentu
15. 15
TCP Header
TCP header panjangnya bervariasi. Panjang minimal 20
bytes. Terdiri dari 7 field : Source Port, Destination Port,
Sequence Number, Ack. Number, Data Offset, Reserver dan
Flag.
2 byte masing –masing untuk Source Port and the
Destination Port. Sama seperti UDP.
4 byte sequence Number yang berisi nomor urut transmisi
data dalam satu segment
Ini digunakan ceking ketika semua byte telah diterima
Acknowledgement Number gterdiri dari 4 byte.
Berisi Sequence number berikutnya dari penerima
Data Offset mengindikasikan awal data. Ini berhubungan
dengan ukuran TCP header.
Diikuti 6 bit reserve untuk penggunaan kedepan, diset 0.
Flags menentukan tipe informasi pada segment.
17. 17
Tahapan Komunikasi pada
TCP
TCP adalah Protocol connection-oriented.
Sebelum data ditransmisikan, koneksi yang
dibuat bisa diset atau dirubah sesuai
keadaan.
Tiga tahap komunikasih dahulu
connection set-up
data transfer
connection release
Datayang ditransmisikan bisa dipakai
untuk tiga keadaan tadi
18. 18
Three Way Handshake
Koneksi TCP diawali oleh prosedur yang biasa disebut dengan
Three-Way-Handshake. Tujuannya untuk melakukan sinkronisasi
antara pengirim dan penerima. Hal yang diinformasikan selama
Three Way Handshake adalah Jumlah data yang bisa
ditransmisikan dalam satu waktu, Sequence number yang
dipakai.
Untuk setup koneksi, host melakukan session inisialisasi dengan
menset flag syncronisasi ke 1.
Segment juga berisi sequence number yang mengindikasikan
awal byte yang ingin dikirim berikutnya. Juga berisi
acknowledgement yang terdiri dari sequence number
berikutnya untuk menerima data.
Setelah Three Way Handshake dilakukan baru dianggap session
established, dan koneksi dua arah siap dilaksanakan
20. Packet 1: source: 130.57.20.10 dest.:130.57.20.1
TCP: ----- TCP header ----- 20
TCP: Source port = 1026
TCP: Destination port = 524
TCP: Initial sequence number = 12952
TCP: Next expected Seq number= 12953
TCP: .... ..1. = SYN
TCP: Window = 8192
TCP: Checksum = 1303 (correct)
TCP: Maximum segment size = 1460 (TCP Option)
Packet 2: source: 130.57.20.1 dest: 130.57.20.10
TCP: ----- TCP header -----
TCP: Source port = 524
TCP: Destination port = 1026
TCP: Initial sequence number = 2744080
TCP: Next expected Seq number= 2744081
TCP: Acknowledgment number = 12953
TCP: .... ..1. = SYN
TCP: Window = 32768
TCP: Checksum = D3B7 (correct)
TCP: Maximum segment size = 1460 (TCP Option)
Packet 3: source: 130.57.20.10 dest: 130.57.20.1
TCP: ----- TCP header ----- Maksmum ukuran
TCP: Source port = 1026 segment dan
TCP: Destination port
TCP: Sequence number
= 524
= 12953
ukuran windows
TCP: Next expected Seq number= 12953 yang
TCP: Acknowledgment number = 2744081 dinegosiasikan juga
TCP: ...1 .... = Acknowledgment
TCP: Window = 8760 dikirim
TCP: Checksum = 493D (correct)
TCP: No TCP options
21. 21
Positive Acknowledgement
with Retransmission (PAR)
Setelah koneksi establishe, ini harus dimantain sampai salah satu
partner komunkasi ingin mengakhir komunikasi. System Transfer
Data didasarkan pada mekanisme PAR - Positive
Acknowledgement with Retransmission. Yang artinya bahwa
untuk kebenaran data yang diterima maka penerima data harus
mengirimkan acknowledgement ke pengirim.
Untuk efisiensi, acknowledgements hanya berisi paket
selanjutnya yang harus dikirim, tidak untuk setiap individu paket
23. 23
0 15 16 31
16-bit Source Port Number 16-bit Destination Port Number
TCP 32-bit Sequence Number
header
32 bit Acknowledgement Number
4-bit Header 6-bit U A P R S F
Length (Reserved) R C S S Y I 16-bit Window Size
G K H T N N
16-bit TCP Checksum 16-bit Urgent Pointer
Options (if any)
Data (if any)
Paket mungkin didrop sepanjang jalan, time out atau
rusak
Jika misal 4, 5, dan 6 dikirim, tapi 5 lost, receiver hanya
akan memberi ack sampai 4, mengirim ack 5.
Pengirim akan mengirim ulang paket 5 dan menunggu
untuk mendengar dari penerima paket mana yang
selanjutnya dikirim
Receiver mengirim Ack 7, jadi pengirim tahu dapat
memulai lagi mengirim paket ke-7 dan seterusnya
24. 24
Sliding Window
Untuk
melakukan transmisi data penerima
menyiapkan buffer, untuk mekanisme ini
TCP menggunakan mekanisme sliding
windows. Setiap host mempunyai akses
ke dua windows: satu mengirim data dan
yang lain menerima data. Ukuran
windows mengindikasikan jumlah buffer
yang disiapkan untuk data
26. Pada setiap sessioan http antara client dan server yang
sama, mempunyai . Destination port yang sama, tapi berbeda
26
Source Port (unik) untuk mengidentifikasi setiap session
sehingga pengembalian permintaan masuk ke sesi yang
benar
Dest. Port = 80 Send Dest. Port = 80 Send
http to packets to web http to packets to web
www.cisco.com server application www.cisco.com server application
1030 80 1031 80
Ini menunjukkan contoh dua browser windows dengan URL yang sama.
TCP/IP menggunakan source port numbers untuk pengembalian informasi
27. TCP or Source IP Destination IP Connection State
27
UDP
Source Port Destination Port
www.google.com
www.cisco.com
netstat command
Aktualnya, ketika kita membuka sebuah halaman html, maka session TCP dibangun.
Jika membuka beberapa halaman web maka multiple koneksi TCP dibentuk, setiap
koneksi di client akan membentuk port yang berbeda-beda, dengan port tujuan sama.
28. 28
TCP Header
0 15 16 31
16-bit Source Port Number 16-bit Destination Port Number
32-bit Sequence Number
32 bit Acknowledgement Number
4-bit Header 6-bit U A P R S F
Length (Reserved) R C S S Y I 16-bit Window Size
G K H T N N
16-bit TCP Checksum 16-bit Urgent Pointer
Options (if any)
Data (if any)
Keduanya TCP dan UDP menggunakan Port
untuk meneruskan informasi ke layer
diatasnya