sundaymarket62.files.wordpress.com€¦ · web viewberawal dari rasa tanggung jawab menyelesaikan...

30
Tugas Jaringan Komputer Kelompok 11 Dicka Chandra : 201243501530 Deny Ahmad Fauzi : 201243501511 Rachmad Arilaha.S : 201243501583

Upload: dinhminh

Post on 25-Apr-2019

215 views

Category:

Documents


0 download

TRANSCRIPT

Tugas Jaringan Komputer

Kelompok 11

Dicka Chandra : 201243501530Deny Ahmad Fauzi : 201243501511Rachmad Arilaha.S : 201243501583

FAKULTAS FTMIPA TEKNIK INFORMATIKAUNIVERSITAS INDRAPRASTA PGRI

JAKARTA 2013

KATA PENGANTAR

Segala puji bagi Allah SWT, yang telah memberikan rahmat dan karunianya. Berawal dari rasa tanggung jawab menyelesaikan tugas kelompok membuat makalah dari Bapak Dosen mata kuliah Jaringan Komputer. Selain itu penyusunpun berusaha mendalami suatu bidang ilmu yang masih asing dan belum penyusun pahami, mudah-mudahan dengan ini penyusun menjadi lebih memahami tentang pembahasan materi ini. Saya dan kelompok selaku penyusun berusaha menyelesaikannya semaksimal mungkin. Penyusun menyadari bahwa dalam penulisan makalah ini masih banyak kekurangan, dan jauh dari kesempurnaan, Mohon kiranya kritik dan saran yang membangun, Semoga bermanfaat Amin.

Jakarta, 25 September 2013

Daftar Isi

Kata Pengantar 2Daftar Isi 3BAB 1 Pendahuluan 4BAB 2 Pembahasan Transport Layer 5BAB 3 Elemen Transport Protocol 8BAB 4 Transport Protocol Sederhana 16Sumber & Referensi 25

BAB 2Pembahasan Transport LayerArsitektur Jaringan terdiri atas 7 layer (lapisan) yang mendefinisikan fungsi

Untuk tiap layernya dapat terdiri atas sejumlah protocol yang berbeda, masing-masing menyediakan pelayanan yang sesuai dengan fungsi layer tersebut.

Salah satu layer dari arsitektur jaringan adalah transport layer(layer ke 4).Lapisan ini berfungsi untuk menangani interaksi antara proses-proses pada node sumber dan node tujuan atau dengan kata lain layer ini dapat menjamin penerima mendapatkan data seperti yang dikirimkan.

Layanan :

Mirip dengan network layer:

1. Connection Oriented

2. Connectionless

Tetapi:

1. Kode transport dijalankan di mesin user, sedang network layer di router (yang dioperasikan oleh penyedia layanan koneksi)

2. Transport layer menutupikekurangan di network layer (packet loss, router crash)

3. Dilakukan pembedaan OSI layer

a . Layer 1-4: Transport Service Provider

b. Layer di atas 4: Transport Service User

4. Pembedaan ini sangat mempengaruhi rancangan layer dan menempatkan transport layer di posisi penting, karena membentuk pembatas utama antara provider dan user dari layanan transmisidata yang reliable

Transport Service Primitives

1. Server mengeksekusi LISTEN

2. Ketika client ingin berkomunikasi, mengeksekusi CONNECT – mengirim CON REQ TPDU

3. Jika server berada dalam LISTEN, unblock server dan kirim balik CON ACC TPDU

4. Perukaran data dengan SEND dan RECEIVE

5. Ketika koneksi sudah tidak dibutuhkan, eksekusi DISCONNECT – kirim DISC TPDU

1. Italic: Transisi ( karena kedatangan paket)

2. Solid line: Status client

3. Dashed Line: Status server

Berkeley SocketDigunakan pada Berkeley UNIX untuk TCP Internet programming

BAB 3

Elemen Transport Protocol1, Addressing2. Connection Establishment3. Connection Release4. Flow Control dan Buffering5. Multiplexing6. Crash Recovery

a. Transport protocol mirip data link protocol

b. Keduanya berurusan dengan error control,sequencing dan flow control

c. Perbedaan utama karena berbedanya lingkungan operasi protokolnya

d. Pada data link layer, 2 router berkomunikasi langsung lewat sebuah physical layer

e. Pada transport layer, seolah-olah physical layer ini digantikan oleh subnet

Perbedaan :

a. Route: pada transport layer, diperlukan explicit addressing dari destination

b. Connection Establishment:

c. Sangat sederhana jika lewat wire

d. Pada transport layer hal ini lebih rumit

e. Ada kemungkinan tempat penyimpanan sementara di subnet (di wire tidak ada)

f. Buffering dan Flow Control berbeda.

Addressing

TSAP,NSAP dan koneksi transport

TSAP Addresses

1. Stable:

a. Setiap server mendengarkan TSAP yang dikenal

b. Untuk layanan yang tidak pernah berubah (misal Web Server)

2. Not stable:

a. Untuk user process yang sering berkomunikasi dengan user process lain yang muncul hanya sebentar dan tidak punya TSAP address yang dikenal sebelumnya

b. Skema:

b.1. Initial:setiap mesin yang menawarkan layanan memiliki special process server sebagai proxy

b.2. Directory server: ketika sebuah layanan baru dibentuk, harus mendaftarkandirinya ke directory server yang akan memberikan nama layanan dan TSAP

Connection Establishment

a. Cukup dengan mengirimkan CONNECTION REQUEST TPDU ke destination dan menunggu CONNECTION ACCEPTED? TIDAK!

b. Problem:

c. Packet lost

d. Traffic jam (+packet delayed duplication)

1. Solusi:

1. Gunakan throw-away transport address (dibuat saat diperlukan )

2. Connection identifier, kekurangan: informasi history sangat besar dan akan hilang jika crash

2. Solusi lain:

a. Pembatasan lifetime packet:

a.1. Restricted subnet

a.2. Hop counter

a.3. Timestamp

b. Jika mesin kehilangan isi memory:

b.1. Clock-Based (Tomlinson):

b.2. Tiap host punya time-of-day clock

b.3 Sejumlah bit (low-order) dari clock dipakai sebagai nomor urut initial

b.4. Koneksi harus dibentuk sebelumnya

c. Problem: Incorrect Connection Establishment

c.1. Solusi: 3-way handshake (Tomlinson)

Connection Release

Ada 2 style untuk melepaskan koneksi:

a. Asimetrik:

1. Saat satu pihak menutup, koneksi terputus

2. Kasar/mendadak dan mungkin menyebabkan data loss (data belum sampai lengkap , sudah putus)

b. Simetrik:

b.1. Menganggap koneksi sebagai 2 koneksi searah dan harus dilepaskan secara terpisah

b.2. Host bisa masih menerima data setelah host tsb mengirim DISCONNECT TPDU

c. . Situasi lain:

1. Protokol: Saya sudah selesai, anda sudah juga? Jika jawaban = Ya.

Koneksi bisa diputus (?)

2. Problem: Problem 2 pasukan tentara:

2.a. Berapa yang diperlukan: 2,3,4 atau lebih handshake protocol?

2.b. Ganti disconnect dengan “serang”. Jika tidak ada yang disconnect

Jika belum yakin yang lain siap disconnect juga,maka tidak akan

pernah disconnect

3-way protocol

a. Untuk kasus 2 pasukan, berapapun tidak akan cukup, karena tidak akan pernah yakin

b. Kasus disconnection tidak sekritis perang

c. 3-way dianggap cukup dengan tambahan timeout

4 skenario:(a) Normal(b) Final ACK hilang(c) Respons hilang(d) Respons dan DR berikutnya hilang

Flow Control dan Buffering

1.1. Transport vs. Datalink layer

a. Sama: skema sliding window atau yang lain diperlukan untuk setiap koneksi untuk menjaga transmitter yang cepat tidak overrun receiver lambat

b. Beda: sebuah router biasanyapunya line sedikit, sedang host mungkin banyak (relatif). Perbedaan ini menyebabkan tidak bisa dilakukannyapenerapan strategi buffering di datalink kepada transport layer

c. Jika network unreliable, sender harus mem-buffer semua TPDU yang dikirimkan.

d. Jika network reliable, buffer bisa di receiver saja

e. Masalah: penentuan ukuran buffer (vs. TPDU)

Ukuran Buffer

1.2. Buffering

a. Pilihan optimal antara buffer sender dan buffer receiver ditentukan jenis koneksi

b. Low bandwidth, bursty (interactive terminal) ->buffer sender

c. High bandwidth, file transfer -> buffer receiver

d. Alokasi buffer di receiver bisa dilakukan secara dinamis berdasar permintaan sender dengan TPDU terpisah untuk request buffer

1.3. Flow Control

a. Walaupun masalah buffer (diasumsikan) tidak ada (unlimited buffer),

masih terdapat masalah bottleneck yaitu carrying capacity dari subnet

b. Flow control pada sender harus berbasis pada kapasitas subnet

a. Belsnes mengusulkan skema flow control dengan sliding windows. Ukuran windows dinamis sesuai kapasitas subnet.

Multiplexing

1.1. Digunakan untuk mengoptimalkan penggunaan koneksi

1.2. Ada 2 macam:

a. Upward Multiplexing: sejumlah koneksi transport berbeda ke dalam sebuah koneksi network

b. Downward Multiplexing: sebuah koneksi transport mendistribusikan lalu lintas data ke sejumlah koenksi network, misal untuk meningkatkan bandwidth

Crash Recovery

a. Crash bisa terjadi pada host dan router.

b. Jika transport entity berada sepenuhnya dalam host, recovery dari network dan router crash bisa langsung

c. Jika network layer menyediakan layanan conectionless (datagram), kehilangan TPDU adalah hal yang biasa

d. Jika network layer menyediakan layanan connectionoriented, VC yang hilang ditangani dengan membuat VC baru dan probing ke remote transport entity manayang sudah diterima manayang belum. Yang belum akan diretransmisi

1.1. Masalah utama pada host (server) crash.Diinginkan jangan sampai mengganggu

pekerjaan user (client), berkaitan dengan status sebelum crash.

1.1.1. Solusi naïve: Server minta host lain menanyakan ke client statusnya apakah :

a. S1: one TPDU outstanding -> retransmit recent TPDU

b. S0: no TPDU outstanding

1.1.2. Ada 2 operasi: write TPDU dan send ack yang saling terpisah yang bisa menyebabkan

recovery gagal:

a. Dari sisi server ada 2 kemungkinan: ACK first atau Write first

b. Dari sisi client ada 4 kemungkinan: selalu retransmit TPDU terakhir, tidak pernah

retransmit, retramsnit jika status S0,retransmit jika status S1.

c. Ada 8 kombinasi tetapi ada beberapa yang menyebabkan protocol fail

d. Secara umum, recovery untuk crash di layer N hanya bisa dilakukan di layer N+1

e. Dengan syarat bahwa layer N+1 memiliki informasi yang cukup untuk

melakukan recovery

f. Misal: Transport layer bisa recover crash di network jika kedua pihak yang

berkomunikasi tahu di mana terjadinya crash

BAB 4

Transport Protocol Sederhana1. Sebuah contoh transport layer sederhana untuk pembahasan lebih detil

2. Primitif Layanan yang dibahas adalah untuk connection-oriented

3. Mirip dengan TCP namun lebih sederhana

Contoh Service Primitives

1. 5 primitives: CONNECT, LISTEN, DISCONNECT,SEND dan RECEIVE

2. Setiap primitive berkaitan dengan sebuah library procedure yang mengeksekusinya

a. Parameter untuk primitives dan library adalah sb:

b. Connum= LISTEN(local)

c. Connum= CONNECT(local, remote)

d. Status = SEND(connum, buffer, bytes)

e. Status = RECEIVE(connum, buffer, bytes)

f. Status = DISCONNECT(connum)

Primitives

1. LISTEN: memberitakan keinginan caller(procedure call) untuk menerima request koneksi ke local TSAP tertentu

2. CONNECT: mencoba establish transport connection antara local TSAP dan remote TSAP (di sisi seberang). Jika sukses connum > 0 menandakan identifier koneksi. Jika gagal connum < 0 menandakan sebab kegagalan. Misalremote TSAP sudah terkoneksi dengan TSAP lain.

3. SEND: mengirim isi buffer sebagai message dalam transport connection connum. Kemungkinan error/kegagalan dikembalikan dalam status, misalnya: no connection, illegal buffer address, atau negative count.

4. RECEIVE: keinginan caller menerima data.

5. DISCONNECT: teminate transport connection yang diindikasikan dengan connum. Jika berhasil status = 0. Kemungkinan error: connum tidak valid

Contoh Transport Entity

1. Menggunakan layanan connection-oriented yang reliable (dari layer network)

2. Fokus pada masalah transport yang tidak muncul di layer bawah

a. Connection establishment

b. Connection release

c. Credit management

3. Transport entity bisa merupakan bagian dari SO host, atau bisa berupa paket library yang dijalankan di dalam user address space

4. Interface ke layer network melalui procedure to_net dan from_net

5. Memiliki 6 parameter:

a. Connection identifier

b. Bit Q (control message)

c. Bit M (more data following)

d. Packet type

e. Pointer ke data

f. Ukuran data (jumlah bye)

Contoh Transport Entity

1. Setiap koneksiakan berada di salah satu dari 7 status sbb:

a. IDLE: tidak adakoneksi

b. WAITING: sudah eksekusi CONNECT dan CALL REQUEST telah dikirim

c. QUEUED: CALL REQUEST telah tiba, belum ada LISTEN

d. ESTABLISHED: koneksi terbentuk

e. SENDING: user menunggu untuk mengirim paket

f. RECEIVING: Sebuah RECEIVE telah dilakukan

g. DISCONNECTING: Sebuah DISCONNECT telah dilakukan local

2. Perubahan status terjadi karena 3 sebab:

a. Eksekusi sebuah primitif

b. Packet datang

c. Time expires

3. Type procedure:

a. Callable by user program

b. Spontaneus triggered by external events: packet_arrival, clock

Gambaran Grafis

UDP (User Datagram Protocol)

1. Protokol Connectionless Internet dalam transport layer

2. UDP pada dasarnya hanya IP dengan tambahan header singkat

3. UDP memungkinkan aplikasi mengirim IP datagram yang dienkapsulasi dan dikirim tanpa perlu establish conection

4. UDP mengirim segmen-segmen data berisi header 8 byte diikuti payload

5. Header UDP

6. UDP tidak melakukan flow control, error control, atau retransmisi jika menerima bad segment. Semuanya tergantung user process.

7. UDP hanya menyediakan interface ke protokol IP dengan tambahan demultiplexing banyak proses yang menggunakan port.

8. UDP useful untuk situasi client-server (short request replied by short answer)

9. Aplikasi: DNS (IP address lookup) RPC (Remote Procedure Call)

10. Memungkinkan program memanggil procedure yang berada di remote host(s)

11. Saat proses di M1 call procedure di M2,proses tersebut di-suspend dan eksekusi procedure dilakukan di M2

a. Informasi bisa ditransport dari caller ke callee dalam parameter dan bisa dikembalikan sebagai procedure result

b. Tidak ada message passing yang visible bagi programmer

12. Ide: membuat sebuah RPC terlihat sebagai local

a. Dalam bentuk paling sederhana, untuk memanggil remote procedure, program client memiliki library yang disebut client stub yang mewakili server procedure di address space client

b. Server juga memiliki server stub yang membuat seolah-olah call dari client adalah local

13. Problem:

a. Passing parameter tidak mungkin dilakukan karena client dan server berada di address space yang berbeda

b. Tidak ada cara menspesifikasikan ukuran array

c. Tidak selalu dapat mendeduksitype parameter (baik dari spesifikasiformal maupun dari code)

d. Penggunaan variabel global

14. Solusi:

a. Perlu dilakukan pembatasan (restriksi) RTP(Real Time Transport Protocol)

15. Digunakan pada aplikasi multimedia real-time:

a. Internet Radio

b. Internet Telephony

c. Music on demand

d. Videoconferencing

e. Video on demand

16. RFC 1889

17. Fungsi utama RTP adalah multiplex sejumlah data stream real-time ke dalam satu stream paket UDP

18. Stream USP bisa unicasting atau multicasting

(a) posisi RTP dalam protocol stack(b) packet nesting

TCP

1. Untuk aplikasi internet umumnya diperlukan delivery yang reliable dan terurut – digunakan TCP

2. TCP dirancang spesifik untuk menyediakan byte stream yang reliable di atas internetwork yang unreliable

3. TCP dirancang untuk bisa beradaptasidengan berbagai properti internetwork dan robust terhadap bermacam failure

4. Tiap mesin yang mendukung TCP memiliki transport entity berupa:

a. Library procedure

b. User process

c. Bagian dari kernel OS

5. Entity mengelola stream TCP dan interface dengan layer IP

6. Entity menerima user data stream dari local process, memecah menjadi potongan-potongan lebih kecil dari 64KB (1460B jika menggunakan ethernet) dan mengirim masing-masing potongan lewat IP

TCP Entity

1. Ketika paket IP berisi TCP data tiba di mesin tujuan, diberikan ke TCP entity yang kemudian merekonstruksi byte stream

2. TCP bisa berarti:

a. TCP transport entity (software)

b. TCP protocol (aturan/rules)

Model Layanan TCP

1. Layanan TCP didapatkan sender dan receiver dengan membentuk end-point yang disebut socket

2. Tiap socket punya nomor (address) berisi IP address host dan 16-bit nomor port (lokal)

3. Port adalah nama TCP untuk TSAP

4. Koneksi harus terbentuk antara socket di mesin pengirim dan penerima

5. Socket bisa digunakan untuk multiple connection bersamaan. 2 atau lebih koneksi bisa berujung di soket yang sama

6. Koneksi diidentifikasi berdasarkan indentifier socket di kedua ujung. Tidak ada nomor VC atau identifier lain yang digunakan

7. Semua koneksi TCP adalah full-duplex dan pointto Point-to-point

8. TCP tidak mendukung Muticasting atau Broadcasting

9. Koneksi TCP adalah byte stream, bukan message stream.

a. Jika pengirim menulis 4 x 512 bite ke TCP stream, data ini bisa dideliver sebagai 4 x 512, 2 x 1024, atau sebuah 2048, atau yang lain.

b. Penerima tidak bisa mendeteksi besar unit penulisan data

Protokol TCP

1. Setiap byte dalam koneksi TCP memiliki nomor urut 32 bit

2. TCP entity mempertukarkan data dalam bentuk segmen. Segmen TCP berisi fixed 20-byte header (+optional) diikuti data

3. 2 limit pembatasan ukuran segmen:

a. Segmen termasuk header harus cukup di IP payload (65.515 byte = 65.535 - 20)

b. Setiap network punyaMaximum Transfer Unit (MTU) dan setiap segmen harus cukup di MTU. Pada prakteknya MTU umumnya 1500 bytes (Ethernet payload)

4. Protokol yang dipakai TCP pada dasarnya adalah sliding window

a. Ketika sender transmit segmen, timer dinyalakan

b. Ketika segmen tiba di tujuan, penerima mengirim balik segmen (dengan data jika ada) berisi juga nomor ack (sama dengan nomor urut berikutnya yang ditunggu, increment 1

c. Jika timer terlewatisebelum ack diterima, sender retransmit segmen

TCP Connection Establishment

1. Menggunakan 3-way handshake

2. Untuk membentuk koneksi, satu pihak akan pasif menunggu koneksi dengan LISTEN dan ACCEPT, tanpa menentukan siapapun

3. Sisi lain mengeksekusi CONNECT beserta IP address dan port yang ingin dikoneksi, max TCP segment size, dan data optional lain (misal password)

4. Primitive CONNECT mengirim segmen TCP dengan SYN=on dan ACK=off dan menunggu respon

5. Di destination, TCP entity memeriksa apakah ada proses yang sudah LISTEN ke port dimaksud.

a. Jika tidak dikirim jawaban dengan RST=on untuk menolak koneksi

b. Jika ada proses listen, proses diberi TCP segmen.Proses bisa menolak atau menerima koneksi. Jika diterima, segmen ACK dikirimkan

(a) Normal (b) Call collision

TCP Connection Release

1. Setiap koneksisimplex dilepaskan secara independen

2. Untuk melepaskan koneksi, sembarang pihak bisa mengirim segmen TCP dengan bit FIN=1, yang berarti tidakada data lagi yang ingin dikirimkan

3. Ketika FIN di-ack, koneksi arah tersebut terputus. Data masih bisa mengalir di arah yang lain. Ketika kedua arah telah diputus, maka koneksi baru dilepaskan

4. Normalnya, 4 segmen TCP diperlukan untuk melepaskan koneksi. Satu FIN dan satu ACK untuk masing-masing arah

5. Untuk mengindari problem 2 pasukan,digunakan timer

Manajemen Koneksi TCP

Sumber: http://rrdewiratnasari-goodmorning.blogspot.com/2010/10/transport-layer.html

Refrensi:http://kur2003.if.itb.ac.id/file/K6_IF3291_ID.pdf

http://www.cs.ru.nl/~ths/a3/html/h6/h6.html

http://translate.google.co.id/translate?hl=id&sl=en&u=http://en.wikipedia.org/wiki/Transport_Layer&ei=m87KTOfxNoqovQPx67zlDw&sa=X&oi=translate&ct=result&resnum=1&ved=0CB8Q7gEwAA&prev=/search%3Fq%3Dtransport%2Blayer%26hl%3Did%26client%3Dfirefox-a%26hs%3DFGV%26sa%3DG%26rls%3Dorg.mozilla:en-US:official%26channel%3Ds%26prmd%3Db