Senin, 18 Februari 2019

Transport layer

A. Transport layer

Transport layer merupakan lapisan keempat pada lapisan OSI layer. Lapisan ini bertanggungjawab menyediakan layanan pengiriman dari sumber data menuju ke tujuan data dengan cara membuat logical connection antara keduanya. Layer ini bertugas untuk memecah data dan membangun kembali data yang di terima dari application layer ke dalam aliran data yang sama antara sumber dan pengirim data.

B. Layanan pada transport layer

a. Flow control
Lapisan transport bertanggungjawab untuk kontrol aliran (flow control). Flow control mencegah host pengirim membanjiri (over flowing) buffer di host penerima (suatu kejadian yang dapat mengakibatkan data hilang atau rusak). 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 dapat digunakan untuk meningkatkan efisiensi dengan mengurangi buffer underrun.

b. 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 mengirim ACK atau pesan NACK ke pengirim. Skema mengulangi permintaan otomatis dapat digunakan untuk mengirim ulang data yang hilang atau rusak.

c. Multiplexing Adalah teknik untuk mengirimkan atau menerima beberapa jenis data yang berbeda sekaligus pada saat bersamaan melalui suatu media network saja.

d. Service - point addressing Lapisan transport tidak hanya menangani pengiriman atau delivery source-to-destination dari komputer yang satu ke komputer yang lain saja namun lebih spesifik kepada delivery jenis message untuk aplikasi yang berlainan. Sehingga setiap message yang berlainan aplikasi harus memiliki alamat / address tersendiri lain yang disebut service point address.

e. Segmentation dan reassembly Sebuah pesan dibagi dalam segmen-segmen yang terkirim. Setiap segmen memiliki sequence number. Sequence number berguna bagi lapisan transport untuk merakit / reassembly segmen-segmen yang terpecah atau terbagi tadi menjadi message yang utuh.

f. Connection control Lapisan transport dapat berperilaku sebagai connectionless atau connection oriented.

C. Protokol transport layer

1. TCP(Transmission Control Protokol) Merupakan protokol yang berorientasi koneksi. TCP menimbulkan overhead tambahan untuk mendapatkan fungsi. Fungsi tambahan yang ditetapkan oleh TCP adalah pengiriman urutan yang sama, pengiriman yang handal dan flow control. Protokol ini yang menyediakan layanan penuh lapisan transport untuk aplikasi. TCP banyak di gunakan untuk aplikasi browsing, chatting, dsb.

Karakteristik TCP

a. Reliable berarti data ditransfer ke tujuannya dalam suatu urutan seperti ketika dikirim.
b. Berorientasi sambungan (connection - oriented), sebelum data ditransmisikan antara dua host, dua proses yang berjalan pada lapisan aplikasi harus melakukan negosiasi untuk membuat sesi koneksi terlebih dahulu. Koneksi TCP ditutup dengan menggunakan proses terminasi koneksi TCP.
c. Full - duplex, untuk setiap host TCP, koneksi yang terjadi antara dua host terdiri atas dua buah jalur, yakni jalur keluar dan jalur masuk. Dengan menggunakan teknologi lapisan yang lebih rendah yang mendukung full duplex, maka data pun dapat secara simultan diterima dan dikirim. Header TCP berisi nomor urut (TCP sequence number) dari data yang ditransmisikan dan sebuah acknowledgment dari data yang masuk. d. Memiliki layanan flow control, untuk mencegah data terlalu banyak dikirimkan pada satu waktu, yang akhirnya membuat "macet" jaringan internetwork IP, TCP mengimplementasikan layanan flow control yang dimiliki oleh pihak pengirim yang secara terus menerus memantau dan membatasi jumlah data yang dikirimkan pada satu waktu. Untuk mencegah pihak penerima untuk memperoleh data yang tidak dapat disangganya (buffer), TCP juga mengimplementasikan flow control dalam pihak penerima, yang mengindikasikan jumlah buffer yang masih tersedia dalam pihak penerima.
e. Melakukan segmentasi terhadap data yang datang dari lapisan aplikasi (dalam DARPA Reference Model).
f. Mengirimkan paket secara "one-to-one", hal ini karena memang TCP harus membuat sebuah sirkuit logis antara dua buah protokol lapisan aplikasi agar saling dapat berkomunikasi.

Langkah kerja protokol TCP

a. Pertama, datagram dibagi - bagi ke dalam bagian-bagian kecil yang sesuai dengan ukuran bandwidth (lebar frekuensi) dimana data tersebut akan dikirimkan.
b. Lapisan TCP, data lalu "dibungkus" dengan informasi header yang dibutuhkan. Misalnya seperti cara mengarahkan data tersebut ke tujuannya, cara merangkai kembali ke bagian-bagian data tersebut jika sudah sampai pada tujuannya, dsb.
c. Setelah datagram dibungkus dengan header TCP, datagram tersebut dikirim kepada lapisan IP.
d. IP menerima datagram dari TCP, dan menambahkan headernya sendiri pada datagram tersebut.
e. IP lalu mengarahkan datagram tersebut ke tujuannya.
f. Komputer penerima melakukan proses-proses perhitungan, ia memeriksa perhitungan checksum yang sama dengan data yang diterima.
g. Jika kedua perhitungan tersebut tidak cocok berarti ada error sewaktu pengiriman dan datagram akan di kirim kembali.

Kelebihan TCP

a. Protokol yang bisa diarahkan. Artinya ia bisa mengirimkan datagram melalui rute-rute yang telah ditentukan sebelumnya yang dapat mengurangi kepadatan lalu lintas jaringan, serta membantu jika jaringan mengalami kegagalan protokol ini mengarahkan data melalui jalur lain.
b. Memiliki mekanisme pengiriman data yang handal dan efisien.
c. Bersifat open platform atau platform independent yaitu tidak terikat oleh jenis perangkat keras atau perangkat lunak tertentu.
d. Karena sifatnya terbuka, bisa mengirimkan data antara sistem-sistem komputer yang berbeda yang menjalankan pada sistem-sistem operasi yang berbeda pula.
e. Terpisah dari perangkat keras yang mendasarinya. Protokol ini dapat dijalankan pada jaringan Ethernet, Token ring, X.25, dan bahkan melalui jaringan telepon.
f. Menggunakan skema pengalamatan yang umum, maka semua sistem dapat mengirimkan data ke alamat sistem yang lain.

Kekurangan TCP

a. Memungkinkan buffer over flow attack. b. Denial of service menjadi servis tidak dapat digunakan lagi. Target denial of service, yaitu koneksi jaringan penghubung antar servis dan user, system operasi yang digunakan dan aplikasi yang menyediakan servis.

2. UDP (User Datagram Protocol) UDP adalah salah satu protokol lapisan transport, UDP yang mendukung komunikasi yang tidak andal (unreliable), tanpa koneksi (connectionless) antara dua host-host dalam jaringan yang menggunakan TCP. UDP memiliki keuntungan pengiriman data yang low overhead. Potongan-potongan komunikasi dalam UDP disebut datagrams.

Karakteristik UDP

a. Connectionless (tanpa koneksi), pesan-pesan UDP akan dikirimkan tanpa harus melakukan proses negosiasi koneksi antara dua host yang hendak bertukar informasi.
b. Unreliable (tidak andal), pesan-pesan UDP akan dikirimkan sebagai datagram tanpa adanya nomor urut atau pesan acknowledgment. Protokol lapisan aplikasi yang berjalan di atas UDP harus melakukan pemulihan terhadap pesan-pesan yang hilang selama tranmisi. Umumnya, protokol lapisan aplikasi yang berjalan di atas UDP mengimplementasikan layanan keandalan mereka masing-masing, atau mengirim pesan secara periodik atau dengan menggunakan waktu yang telah didefinisikan.
c. UDP menyediakan mekanisme untuk mengirim pesan-pesan ke sebuah protokol lapisan aplikasi atau proses tertentu di dalam sebuah host dalam jaringan menggunakan TCP/IP. Header UDP berisi field source Process Identification dan Destination Process Identification.
d. UDP menyediakan perhitungan checksum berukuran 16 bit terhadap keseluruhan pesan UDP.

Contoh protokol aplikasi yang menggunakan UDP
a. DNS (Domain Name System) 53
b. SNMP (Simple Network Management Protocol) 161, 162
c. TFTP (Trifial File Transfer Protocol) 69 d. SunRPC port 111

Kelebihan UDP

a. Dapat melakukan pesan broadcast (karena memang dalam UDP tidak membutuhkan handshaking) jadi asal dengan kirim saja keseluruhan.
b. Lebih cepat koneksinya karena tidak harus bernegosiasi (handshaking) dan juga tidak berurutan pengirimannya.
c. Hemat memori karena tidak rumit dan tidak harus memecah data dulu. Seperti mengubah acknowledgment.

Kekurangan UDP dan layanan yang tidak disediakan oleh UDP

a. UDP tidak menyediakan mekanisme penyanggaan (buffering) dari data yang masuk ataupun data yang keluar. Tugas buffering merupakan tugas yang harus diimplementasikan oleh protokol lapisan aplikasi yang berjalan di atas UDP.
b. UDP tidak menyediakan mekanisme segmentasi data yang besar ke dalam segmen-segmen data, seperti yang terjadi dalam protokol TCP. Karena itulah protokol lapisan aplikasi yang berjalan di atas UDP harus mengirimkan data yang berukuran kecil (tidak lebih besar dari nilai maximum Transfer Unit/MTU) yang dimiliki oleh antarmuka di mana data tersebut dikirim. Karena, jika ukuran paket data yang dikirim lebih besar dibanding nilai MTU, paket data yang dikirimkan bisa saja terpecah menjadi beberapa fragmen yang akhirnya tidak jadi terkirim dengan benar.
c. UDP tidak menyediakan mekanisme flow - control, seperti yang dimiliki oleh TCP.

Kegunaan UDP

a. Protokol yang "ringan" (lightweight) untuk menghemat sumber daya memori dan prosesor, beberapa protokol lapisan aplikasi membutuhkan penggunaan protokol yang ringan yang dapat melakukan fungsi-fungsi spesifik dapat saling bertukar pesan. Contoh dari protokol yang ringan adalah fungsi query nama dari protokol lapisan aplikasi Domain Name System.
b. Protokol lapisan aplikasi yang mengimplementasikan layanan keandalan : jika protokol lapisan aplikasi menyediakan layanan transfer data yang andal, maka kebutuhan terhadap keandalan yang ditawarkan oleh TCP pun menjadi tidak ada. Contoh dari protokol seperti ini adalah Trivial File Transfer Protocol (TFTP) dan Network File System (NFS).
c. Protokol ini tidak membutuhkan keandalan. Contoh protokol ini adalah protokol Routing Information Protocol (RIP).
d. Transmisi broadcast karena UDP merupakan protokol yang tidak perlu membuat koneksi terlebih dahulu dengan sebuah host tertentu, maka tranmisi broadcastpun dimungkinkan. Sebuah protokol lapisan aplikasi dapat mengirimkan paket data ke beberapa tujuan dengan menggunakan alamat multicast atau broadcast. Hal ini kontras dengan protokol TCP yang hanya dapat mengirimkan tranmisi one-to-one. Contoh sequery nama dalam protokol NetBIOS Name Service.

Perbedaan TCP dan UDP

TCP

a. Berorientasi berdasarkan konsep koneksi.
b. Jaminan pengiriman-penerimaan data akan reliable dan teratur.
c. Secara otomatis memecah data ke dalam paket-paket.
d. Tidak akan mengirimkan data terlalu cepat sehingga memberikan jaminan koneksi internet dapat menanganinya.
e. Mudah untuk digunakan, transfer paket data seperti menulis dan membaca file.

UDP

a. Tidak berdasarkan konsep koneksi, jadi harus membuat kode sendiri.
b. Tidak ada jaminan pengiriman dan penerimaan data akan reliable dan teratur, sehingga paket data mungkin dapat berkurang, terduplikat atau bahkan tidak sampai sama sekali.
c. Pemecahan ke dalam paket-paket dan proses pengirimannya dilakukan secara manual.
d. Internet masih dapat menanganinya.
e. Jika paket ada yang hilang, perlu dipikirkan di mana letak kesalahannya yang terjadi dan mengirim ulang data yang diperlukan.

Tidak ada komentar:

Posting Komentar