Transport layer
Lapisan transpor atau transport layer adalah lapisan keempat dari model referensi jaringan OSI. Lapisan transpor bertanggung jawab untuk menyediakan layanan-layanan yang dapat diandalkan kepada protokol-protokol yang terletak di atasnya. Layanan yang dimaksud antara lain:
Mengatur alur (flow control) untuk menjamin bahwa perangkat yang mentransmisikan data tidak mengirimkan lebih banyak data daripada yang dapat ditangani oleh perangkat yang menerimanya.
Mengurutkan paket (packet sequencing), yang dilakukan untuk mengubah data yang hendak dikirimkan menjadi segmen-segmen data (proses ini disebut dengan proses segmentasi/segmentation), dan tentunya memiliki fitur untuk menyusunnya kembali.
Penanganan kesalahan dan fitur acknowledgment untuk menjamin bahwa data telah dikirimkan dengan benar dan akan dikirimkan lagi ketika memang data tidak sampai ke tujuan.
Multiplexing, yang dapat digunakan untuk menggabungkan data dari bebeberapa sumber untuk mengirimkannya melalui satu jalur data saja.
Pembentukan sirkuit virtual, yang dilakukan dalam rangka membuat sesi koneksi antara dua node yang hendak berkomunikasi.
Contoh dari protokol yang bekerja pada lapisan transport adalah Transmission Control Protocol (TCP) dan User Datagram Protocol (UDP) yang tersedia dari kumpulan protokol TCP/IP. Pada ulasan tentang Internet Layer dan Subnetting, kita mengenal banyak protokol yang sangat effektif dalam menyediakan keperluan informasi addressing dan routing sehingga data bisa sampai ke tujuan dengan sempurna. Addressing dan routing hanyalah satu bagian dari perjalanan data didalam network. Para developer membutuhkan layer yang lain diatas Internet Layer yang bisa menyediakan fitur-fitur yang dibutuhkan yang tidak terdapat pada Internet Layer. Secara spesifik, para developer TCP/IP menginginkan transport layer untuk menyediakan hal-hal berikut :
• Sebuah interface untuk network applications : dengan kata lain, menyediakan cara agar aplikasi bisa mengakses network. Desainer ingin bisa mengarahkan data tidak hanya pada komputer tujuan saja, tapi juga pada aplikasi spesifik pada komputer tujuan.
• Mekanisme multiplexing/demultiplexing. Multiplexing, dalam hal ini, berarti menerima data dari aplikasi-aplikasi dan mesin yang berbeda dan mengarahkan data-data tersebut pada satu aplikasi tertentu yang berjalan pada komputer tujuan. Dengan kata lain, transport layer harus mampu mendukung beberapa aplikasi network secara simultan dan mengatur alur data kepada Internet Layer. Pada komputer penerima, transport layer harus mampumenerima data dari Internet Layer dan mengarahkan data-data tersebut pada beberapa aplikasi yang berbeda. Fitur yang dikenal sebagai demultiplexing ini, memungkinkan sebuah komputer untuk men-support jalannya beberapa aplikasi network secara simultan, seperti web browser, email client, dan file-sharing. Aspek lain dari multiplexing/demultiplexing adalah satu aplikasi tunggal dapat me-maintain koneksi-koneksi dengan lebih dari satu komputer lain secara simultan.
• Error checking, flow control, dan verification.
Karenanya, Transport layer, menyediakan dua jalur bagi aplikasi network untuk mengakses network, masing-masing dilengkapi dengan fitur-fitur interfacing dan multiplexing/demultiplexing yang dibutuhkan untuk mendukung aplikasi network, namun keduanya memiliki pendekatan jaminan kualitas yang sangat berbeda:
• Transport Control Protocol (TCP): TCP menyediakan fitur error control dan flow control yang diperluas untuk memastikan data terkirim dengan sempurna. TCP termasuk connection-oriented protocol.
• User Datagram Protocol (UDP): UDP menyediakan fitur error checking yang sangat remeh dan di desain untuk situasi dimana fitur-fitur tambahan pada TCP tidak diperlukan. UDP termasuk connectionless protocol.
Konsep Transport Layer
Beberapa konsep penting transport layer antara lain :
• Connection-oriented dan connectionless protocols
• Ports dan sockets
• Multiplexing
Connection-Oriented dan Connectionless Protocols
• Protokol connection-oriented membangun dan me-maintain koneksi antar komputer yang sedang berkomunikasi dan memonitor status koneksi tersebut setelah proses transmisi data. Dengan kata lain, untuk setiap paket data yang dikirimkan kedalam network harus ada acknowledgment yang diterima, dan mesin pengirim merekam status informasi untuk memastikan setiap paket diterima tanpa ada error, mengulang proses transmisi jika diperlukan. Pada akhir proses transmisi, mesin pengirim dan penerima memutuskan koneksi secara formal.
• Protokol connectionless mengirimkan datagram ke mesin tujuan dengan jalur searah dan tidak memberikan notifikasi pada mesin tujuan sebelum mengirimkan data. Mesin tujuan menerima data dan tidak memberikan konfirmasi pada pengirim tentang status data yang diterimanya.
Ports dan Sockets
Transport layer berfungsi sebagai interface antara network applications dengan network dan juga menyediakan metode untuk mengarahkan data-data yang diterima dari network kepada aplikasi-aplikasi tertentu secara spesifik. Dalam sistem TCP/IP, aplikasi-aplikasi bisa mengalamatkan data kepada salah satu modul protokol TCP atau UDP menggunakan nomor port. Port adalah internal address yang berfungsi sebagai jalur kecil dari aplikasi menuju transport layer dan sebaliknya. Misalnya, sebuah klien biasanya melakukan koneksi dengan aplikasi FTP pada server melalui TCP port 21.
Dengan memperhatikan lebih teliti, metode transport layer untuk pengalamatan data-data dari network pada aplikasi spesifik menunjukkan bahwa data-data TCP dan UDP sebenarnya dialamatkan kepada apa yang dikenal sebagai socket. Socket adalah sebuah address yang dibentuk dari gabungan IP address dan angka port. Misalnya socket 111.121.131.141.21menunjukkan port 21 pada komputer dengan IP address 111.121.131.141.
Contoh berikut menunjukkan bagaimana komputer mengakses aplikasi pada mesin tujuan melewatu socket:
1. Komputer A menginisiasi koneksi dengan aplikasi pada komputer B melalui sebuah well-known port. Well-known port adalah nomor port yang sudah di assign pada aplikasi tertentu oleh ICANN dan menjadi standard. Well-known port tersebut digabungkan dengan IP address menjadi socket tujuan untuk komputer A. request yang dilakukan oleh komputer A juga mencantumkan data yang menunjukkan alamat socket yang bisa digunakan oleh komputer B untuk menjawab request komputer A.
2. Komputer B menerima request dari komputer A melalui well-known port dan memberikan respond yang ditujukan pada socket komputer A. Socket ini menjadi address tujuan untuk data yang dikirimkan dari aplikasi komputer B untuk aplikasi kokmputer A.
Multiplexing/Demultiplexing
Sistem pengalamatan socket ini memungkinkan TCP dan UDP menjalankan tugas penting yang lain: multiplexing and demultiplexing. Sudah disebutkan sebelumnya, multiplexing adalah membundel input dari beberapa sumber menjadi satu output tunggal, sedangkan demultiplexing adalah menerima input dari satu sumber dan mengirimkannya pada beberapa output.
Multiplexing/demultiplexing memungkinkan level bawah TCP/IP stack untuk memproses data tanpa memperhatikan aplikasi yang mana yang menginisiasi data tersebut. Semua yang berhubungan dengan aplikasi diselesaikan pada transport layer, dan data ditransfer dari dan ke internet layer sebagai satu entitas tunggal.
Memahami TCP dan UDP
TCP: Connection-Oriented Transport Protocol
TCP mempunyai beberapa fitur penting lain yang perlu diperhatikan :
• Stream-oriented processing: TCP memproses data dalam bentuk stream. Dengan kata lain, TCP dapat menerima data dalam bentuk 1 byte sebagai ganti block data yang belum diformat. TCP memformat data menjadi segment-segment yang akan diserahkan pada Internet layer.
• Resequencing: Menyusun kembali data-data yang datang secara acak sesuai dengan urutan aslinya.
• Flow control: fitur flow control ini memastikan data yang ditransmisikan tidak membanjiri mesin penerima melebihi kemampuannya menerima data dalam satu waktu.
• Precedence and security: Banyak software yang mengimplementasikan TCP, namun sedikit yang menyediakan fitur ini.
• Graceful close: TCP selalu menutup koneksi nya secara formal sebagaimana saat membentuk koneksi.
Pembahasan tentang TCP ini juga menunjukkan bahwa sebuah protokol lebih dari sekedar format data; ia adalah keseluruhan sistem proses interaksi dan desain prosedur untuk mencapai tujuan yang diinginkan.
Point penting lain yang perlu kita ketahui adalah, router tidak berhubungan dengan informasi-informasi pada transport layer. Router Cuma menyerahkan data dari transport layer dalam bentuk IP datagram. Informasi Kontrol dan verifikasi yang di encode dalam segment TCP ditujukan semata-mata untuk software TCP pada mesin tujuan. Hal ini mempercepat routing internetwork karena router tidak ikut berpartisipasi pada proses-proses TCP.
Format Data TCP Data
Format TCP header seperti yang ditunjukkan oleh gambar dibawah ini.
Koneksi TCP
TCP mendukung dua tipe status open :
• Passive open: Proses aplikasi (server) tertentu memberitahukan TCP bahwa aplikasi tersebut sudah siap menerima datangnya rekues koneksi melalui TCP port. Karena itu, jalur dari TCP menuju aplikasi dibuka sebagai antisipasi datangnya rekues koneksi.
• Active open: Sebuah aplikasi (client) merekues TCP untuk menginisiasi koneksi dengan komputer lain yang berada pada status passive open.
Klien adalah komputer yang melakukan rekues atau menerima servis dari komputer lain dalam network.
Server adalah komputer yang menawarkan servis pada komputer lain dalam network.
Menjalin Koneksi
Agar acknowledgement bisa dijalankan, mesin-mesin harus saling mensinkronkan nomor urut (sequence number) mereka terlebih dahulu. Proses sinkronisasi inilah yang dikenal sebagaithree-way handshake. Tiga langkah dalam three-way handshake seperti berikut:
1. Komputer A mengirim segment data dengan
SYN = 1; ACK = 0
Sequence Number = X , dimana X adalah initial sequence number (ISN) komputer A
2. Komputer B menerima segment dari komputer A dan mengembalikan segment dengan
SYN=1;ACK=1
Sequence number = Y, dimana Y adalah ISN dari komputer B
Acknowledgment number = M+1, dimana M adalah nilai sequence number yang terakhir diterima dari komputer A.
3. Komputer A mengirimkan segment pada komputer B yang berupa acknowledge atas ISN dari komputer B.
SYN = 0; ACK=1
Sequence number = sequence number selanjutnya (M+1)
acknowledgment number = N +1, dimana N adalah nilai sequence number terakhir yang diterima dari komputer B.
Setelah three-way handshake, koneksi terjalin, dan modul-modul TCP mengirim dan menerima data menggunakan sequence dan acknowledgment.
TCP Flow Control
Field window pada TCP header berfungsi untuk mekanisme flow control koneksi. Tujuan dari field window tersebut adalah memastikan komputer pengirim tidak mengirim data terlalu banyak dan terlalu cepat yang bisa menyebabkan hilangnya data pada komputer penerima karena tidak terproses. Metode flow control yang digunakan TCP ini biasa disebut sliding window.
Closing a Connection
Saat tiba memutuskan koneksi, komputer yang menginginkan pemutusan koneksi, komputer A, menempatkan segment pada antrian dengan variable FIN di isi dengan angkat 1. Aplikasi kemudian memasuki status fin-wait. Dalam status fin-wait, software TCP komputer A tetap menerima segment dan memproses segment yang sudah berada pada antrian, tetapi tidak ada tambahan data yang diterima dari aplikasi. Ketika komputer B menerima segment FIN, ia akan memberikan acknowledgment, mengirimkan segment yang tersisa, dan membertahukan aplikasi lokal bahwa segment FIN telah diterima. Komputer B kemudian mengirimkan segment FIN ke komputer A, komputer A memberikan acknowledgment, dan koneksi dihentikan..
UDP: Connectionless Transport Protocol
UDP jauh lebih sederhana dibandingkan dengan TCP, UDP tidak menyediakan fungsi-fungsi seperti yang disebutkan diatas. Namun, ada beberapa hal yang perlu diperhatikan tentang UDP ini.
Pertama, walaupun UDP dikatakan tidak punya kemampuan error-checking, faktanya, UDP mampu melakukan error-checking sederhana. Jadi akan lebih benar jika menyebut UDP sebagai protokol yang memiliki fungsi error-checking yang terbatas.
Kedua, UDP tidak menawarkan resequencing (pengurutan kembali) data seperti pada TCP.
Kemudian, UDP tidak melakukan transmisi ulang jika ada data yang korup atau hilang, tidakmengurutkan datagram yang diterima, tidak mengeliminasi duplikasi datagram, tidakmemberikan acknowledgmnet atas segment yang diterima, juga tidak menjalin dan memutus koneksi. UDP pada dasarnya adalah mekanisme yang dibuat untuk aplikasi yang ingin mentransfer data tanpa kelebihan-kelebihan yang ditawarkan TCP.
Karena UDP header yang sebenarnya tidak menyertakan IP address sumber dan tujuan, maka mungkin saja, datagram disampaikan pada komputer yang tidak dituju. Bagian data yang digunakan untuk kalkulasi checksum adalah sebuah string yang diextract dari IP header yang dikenal sebagai pseudo-heder. Pseudo-header inilah yang menyediakan informasi IP address tujuan sehingga komputer penerima bisa menentukan apakah datagram UDP tersebut salah kirim atau tidak.
Firewalls
Firewall adalah sistem yang melindungi jaringan lokal dari serangan-serangan dari user-user tidak berkepentingan yang berusaha mengakses LAN dari internet. Firewalls melaksanakan beberapa fungsi. Namun, fitur dasar dari firewall bersinggungan dengan pembahasan kita diatas.
Fitur tersebut adalah kemampuan firewall untuk mem-block akses pada port-port TCP dan UDP tertentu. Kata firewall kadang-kadang digunakan sebagai sebuah usaha untuk menutup akses pada port.
Ada banyak layanan yang bisa opsional disediakan oleh protokol Transport Layer, dan protokol yang berbeda mungkin atau mungkin tidak menerapkannya.
* Koneksi berorientasi komunikasi: Menafsirkan koneksi sebagai data stream dapat memberikan banyak manfaat bagi aplikasi. Hal ini biasanya lebih mudah untuk berurusan dengan daripada yang mendasari hubungan-model yang kurang, seperti yang mendasari model Transmission Control Protocol Protokol Internet datagrams.
orientasi Byte *: Daripada mengolah pesan dalam format sistem komunikasi yang mendasarinya, seringkali lebih mudah untuk sebuah aplikasi untuk mengolah data stream sebagai urutan byte. Penyederhanaan ini membantu aplikasi bekerja dengan berbagai format pesan yang mendasarinya.
* Pengiriman order Sama: Lapisan Jaringan umumnya tidak menjamin bahwa paket data akan tiba dalam urutan yang sama bahwa mereka dikirim, tetapi sering hal ini merupakan fitur yang diinginkan. Hal ini biasanya dilakukan melalui penggunaan penomoran segmen, dengan penerima melewati mereka ke aplikasi secara berurutan. Hal ini dapat menyebabkan kepala-of-line blocking.
* Reliabilitas: Paket mungkin hilang selama transportasi karena kongesti jaringan dan kesalahan. Dengan menggunakan kode deteksi kesalahan, seperti checksum, maka protokol transport dapat memeriksa bahwa data tidak rusak, dan memverifikasi penerimaan yang benar dengan mengirim ACK atau pesan NACK ke pengirim. skema mengulangi permintaan otomatis dapat digunakan untuk mengirim ulang data yang hilang atau rusak.
* Flow control: Tingkat transmisi data antara dua node kadang-kadang harus dikelola untuk mencegah pengirim cepat dari transmisi data lebih banyak daripada yang dapat didukung oleh data buffer menerima, menyebabkan buffer overrun. Ini juga dapat digunakan untuk meningkatkan efisiensi dengan mengurangi buffer underrun.
* Penghindaran Kemacetan: Congestion control dapat mengatur lalu lintas masuk ke dalam sebuah jaringan telekomunikasi, sehingga untuk menghindari keruntuhan kongestif dengan mencoba untuk menghindari oversubscription dari setiap kemampuan pemrosesan atau link dari node intermediate dan jaringan dan sumber daya mengambil langkah-langkah mengurangi, seperti mengurangi tingkat paket pengiriman. Misalnya, permintaan ulangi otomatis dapat menyimpan jaringan dalam keadaan padat, situasi ini dapat dihindari dengan menambahkan menghindari kongesti dengan kontrol aliran, termasuk lambat-start. Hal ini membuat konsumsi bandwidth pada tingkat yang rendah di awal transmisi, atau setelah pengiriman ulang paket.
* Multiplexing: Ports dapat menyediakan endpoint ganda pada node tunggal. Sebagai contoh, nama pada alamat pos adalah sejenis multiplexing, dan membedakan antara penerima yang berbeda dari lokasi yang sama. Aplikasi Komputer masing-masing akan mendengarkan informasi tentang port mereka sendiri, yang memungkinkan penggunaan lebih dari satu layanan jaringan pada waktu yang sama. Ini adalah bagian dari Transport Layer pada model TCP / IP, tetapi dari Session Layer dalam model OSI.
[Sunting] Analisis
Transport Layer bertanggung jawab untuk menyampaikan data ke proses aplikasi yang sesuai pada komputer host. Ini melibatkan multiplexing statistik data dari proses aplikasi yang berbeda, yaitu membentuk paket data, dan sumber menambahkan dan nomor port tujuan dalam header setiap paket data Transport Layer. Bersama dengan sumber dan tujuan alamat IP, nomor port merupakan soket jaringan, yaitu alamat identifikasi proses-proses komunikasi.Dalam model OSI, fungsi ini didukung oleh Session Layer.
Beberapa Transport Layer protokol, misalnya TCP, tetapi tidak UDP, dukungan sirkuit virtual, yaitu menyediakan komunikasi berorientasi koneksi melalui jaringan paket berorientasi datagram yang mendasari. Aliran-byte disampaikan ketika bersembunyi komunikasi paket modus untuk proses aplikasi. Ini melibatkan pembentukan koneksi, membagi aliran data ke dalam paket disebut segmen, segmen penomoran dan penataan kembali out-of data pesanan.
Akhirnya, beberapa Transport Layer protokol, misalnya TCP, tetapi tidak UDP, menyediakan komunikasi handal end-to-end, error recovery yaitu dengan cara mendeteksi kesalahan kode dan permintaan ulang otomatis (ARQ) protokol. Protokol ARQ juga menyediakan flow control, yang dapat digabungkan dengan menghindari kemacetan.
UDP adalah protokol yang sangat sederhana, dan tidak menyediakan sirkuit virtual, atau komunikasi yang handal, mendelegasikan fungsi-fungsi ini dengan program aplikasi. paket UDP disebut datagram, bukan segmen.
TCP digunakan untuk berbagai protokol, termasuk web browsing HTTP dan transfer email.UDP dapat digunakan untuk multicasting dan penyiaran, karena transmisi ulang yang tidak mungkin untuk sejumlah besar host. UDP biasanya memberikan throughput yang lebih tinggi dan latensi lebih pendek, dan karena itu sering digunakan untuk komunikasi multimedia real-time dimana packet loss kadang-kadang dapat diterima, misalnya IP-TV dan IP-telephony, dan untuk permainan komputer online.
Definisi yang tepat dari apa yang memenuhi syarat sebagai protokol lapisan transport tidak tegas. Berikut ini adalah daftar singkat:
• ATP, AppleTalk Transaction Protocol
• CUDP, Cyclic UDP
• DCCP, Datagram Congestion Control Protocol
• FCP, Fiber Channel Protocol
• IL, IL Protocol
• NBF, NetBIOS Frames protocol
• SCTP, Stream Control Transmission Protocol
• SPX, Sequenced Packet Exchange
• SST, Structured Stream Transport
• TCP, Transmission Control Protocol
• UDP, User Datagram Protocol
• UDP Lite
• µTP, Micro Transport Protocol
LAYANAN
Perbandingan protokol Transport Layer
Feature Name
UDP
UDP Lite
TCP
SCTP
DCCP
RUDP
Packet header size
8 Bytes
20-60 Bytes
12 Bytes + Variable Chunk Header
12 or 16 bytes
Transport Layer packet entity
Datagram
Datagram
Segment
Datagram
Datagram
Datagram
Connection oriented
No
No
Yes
Yes
Yes
No
Reliable transport
No
No
Yes
Yes
No
Yes
Unreliable transport
Yes
Yes
No
Yes
Yes
Yes
Preserve message boundary
Yes
Yes
No
Yes
Yes
Unsure
Ordered delivery
No
No
Yes
Yes
No
No
Unordered delivery
Yes
Yes
No
Yes
Yes
Yes
Data checksum
Optional
Yes
Yes
Yes
Yes
Unsure
Checksum size (bits)
16
16
16
32
16
Unsure
Partial checksum
No
Yes
No
No
Yes
No
Path MTU
No
No
Yes
Yes
Yes
Unsure
Flow control
No
Yes
Yes
No
Congestion control
No
No
Yes
Yes
Yes
Unsure
ECN support
No
Yes
Yes
Yes
Multiple streams
No
No
No
Yes
No
No
Multi-homing support
No
No
No
Yes
No
No
Bundling / Nagle
No
No
Yes
Yes
No
Unsure
NAT friendly
Yes
Yes
No
Yes
Model OSI mendefinisikan lima kelas protokol koneksi-mode transportasi yang ditunjuk kelas 0(TP0) untuk kelas 4 (TP4). Kelas 0 tidak berisi pemulihan kesalahan, dan dirancang untuk digunakan pada lapisan jaringan yang menyediakan koneksi bebas dari kesalahan. Kelas 4yang terdekat dengan TCP, meskipun TCP berisi fungsi, seperti dekat anggun, yangmemberikan kepada OSI Session Layer. Semua sambungan-mode OSI kelas protokolmenyediakan data dipercepat dan pelestarian batas rekaman. Karakteristik rinci dari kelasdisajikan dalam tabel berikut:
Service
TP0
TP1
TP2
TP3
TP4
Connection oriented network
Yes
Yes
Yes
Yes
Yes
Connectionless network
No
No
No
No
Yes
Concatenation and separation
No
Yes
Yes
Yes
Yes
Segmentation and reassembly
Yes
Yes
Yes
Yes
Yes
Error Recovery
No
Yes
No
Yes
Yes
Reinitiate connection (if an excessive number of PDUs are unacknowledged)
No
Yes
No
Yes
No
multiplexing and demultiplexing over a single virtual circuit
No
No
Yes
Yes
Yes
Explicit flow control
No
No
Yes
Yes
Yes
Retransmission on timeout
No
No
No
No
Yes
Reliable Transport Service
No
Yes
No
Yes
Yes
Sumber:http://dwifebriantoadmojo.blogspot.com/2014/03/pengertian-transport-layer.html?m=1
Tidak ada komentar:
Posting Komentar