2 Protkol pada Transmision layer





Dalam protokol internet TCP/IP setiap laisan miliki tugasnya masing-masing. Namun, ada 2 lpisan yang pekerjaannya hampir  mirip yaitu network layer dan transport layer. Keduanya sama-sama menjadi penghubung walaupun ada sedikit perbeaan dari apa yang di hubungkan. network layer menghubungkan antara komputer sedangkan transport layer menghubungkan antara proses yang terjadi pada komputer kita. dalam proses penghubungan itu kedua layer tersebut di bantu oleh beberp protokol untuk network layer protoko IP dan transport layer protokol TCP dan UDP. apa kegunaan 3 protokol tersebut? mari kita bahas

Nomor Port 

walaupun nomor port ini tidak di singgung pada permulaan tapi menurut saya hal ini perlu di cantumkan. Proses yang terjadi pada host lokal disebut client, client ini membutuhkan layanan/service untuk sebuah proses pada sebuah host yang lain, host tersebut yang dimaksud adalah server. Proses yang dilakukan berdua oleh client dan server memiliki jenis dan proses yang bernama sama. Sistem operasi yang sekarang digunakan sudah mendukung lingkungan yang multiuser dan multiprogramming. Tentu saja ini bisa melakukan multi proses dalam satu buah host baik itu server maupun client. Sebelum melangkah lebih jauh perlu ditentukan titik-titik komunikasi ini :

  • Local host 
  • Local process 
  • Remote host
  • Remote process 
Local host dan remote host memanfaatkan alamat IP. Sedangkan untuk mendefinisikan proses, kita membutuhkan identifier khusu yang disebut, nomor port. Dalam protokol TCP/IP nomor port adalah berupa bilangan integer dari 0 samapai 65.535. Protokol TCP/IP telah memutuskan untuk menetapkan penggunaan nomor port yang digunakan untuk server yang spesifik, nomor port tersebut adalah well-known port numbers. IANA membagi nomor port dalam 3 kelompok yakni:

  • Well-known ports : nomor port ini bermula dari 0 sampai 1.023.
  • Registered ports : nomor ini ini bermula dari 1.024 samapai 49.151.
  • Dynamic ports : nomor port dimulai dari 49.152 sampai 65.535. 

Protokol IP

mengurus komunikasi host to host. Untuk informasi lebih lanjut klik ini klik ini.

Protokol TCP

dikarnaan TCP berada di transpor layer menjadikan protokol ini bertugas untuk mengurus komunikkasi process to process. dalam menjalankan tugasnya TCP membutuhkan inisiasi koneksi yang rumit yaitu sebelum data dikirim, koneksi yang valid harus dibuat antara server dan klien. Setelah koneksi terbentuk, TCP memastikan bahwa setiap paket data sampai ke tujuannya dengan urutan yang benar dan tanpa kehilangan data. Jika terjadi kerusakan atau kehilangan paket, TCP akan melakukan retransmisi untuk memastikan integritas data. Selain itu, TCP juga mengatur aliran data untuk menghindari overload pada jaringan. Meskipun memiliki kehandalan yang tinggi, kelebihan penggunaan TCP adalah memiliki overhead yang lebih besar karena memerlukan koneksi yang diatur dengan baik dan pemulihan jika terjadi kegagalan.

 alamat port yang digunakan TCP masuk dalam kategori alamat port yang disebut Well-known port yaitu:

 
  • Port 7 - Echo: Mengembalikan kembali datagram yang diterima ke pengirim.
  • Port 9 - Discard: Mengabaikan sembarang datagram yang diterima.
  • Port 11 - Users: Memberikan informasi tentang pengguna yang aktif di sistem.
  • Port 13 - Daytime: Mengembalikan tanggal dan waktu saat ini.
  • Port 17 - Quote: Mengembalikan kutipan dari hari ini.
  • Port 19 - Chargen: Mengembalikan string karakter secara berkelanjutan.
  • Port 20 - FTP data: Port untuk koneksi data dalam protokol File Transfer Protocol (FTP).
  • Port 21 - FTP Control: Port untuk koneksi kontrol dalam protokol File Transfer Protocol (FTP).
  • Port 23 - TELNET: Digunakan untuk menghubungkan terminal jarak jauh ke server.
  • Port 25 - SMTP: Protokol untuk pengiriman email, Simple Mail Transfer Protocol (SMTP).
  • Port 53 - DNS: Digunakan untuk layanan Domain Name System (DNS), yang menerjemahkan nama domain menjadi alamat IP.
  • Port 67 - BOOTP: Port untuk protokol Bootstrap Protocol (BOOTP), digunakan untuk mengonfigurasi alamat IP pada perangkat jaringan.
  • Port 79 - Finger: Digunakan untuk mendapatkan informasi tentang pengguna di sistem.
  • Port 80 - HTTP: Protokol untuk transfer dokumen hiperteks, Hypertext Transfer Protocol (HTTP).
  • Port 111 - RPC: Remote Procedure Call, digunakan untuk memanggil fungsi atau prosedur di server jarak jauh.

layanan TCP

  • Stream data Service, TCP melakukan layanan stream data pada lapisan transport. Untuk pengiriman stream, pengirim dan penerima TCP menggunakan buffer. Data yang dilalukan secara streaming itu berupa segmen-segmen.
  • Layanan full-duplex, TCP memberikan juga layanan full-duplex, di mana dta dapat berpindah dalam dua arah pada saat bersamaan.
  • Layanan Reliabel, TCP merupakan protokol di lapisan transport yang sifatnya reliabel. Karena TCP menggunkan mekanisme acknowledgment.

segmen

Segmen adalah unit data dasar yang ditransfer melalui protokol TCP (Transmission Control Protocol). Ketika data dikirim melalui TCP, data tersebut dibagi menjadi segmen-segmen yang kemudian dikirimkan melalui jaringan. Setiap segmen terdiri dari dua bagian utama: header TCP dan payload data.

Header TCP adalah bagian yang mengatur dan mengontrol pengiriman data. Header ini mengandung informasi seperti alamat pengirim dan penerima, nomor urut segmen, serta informasi lainnya yang diperlukan untuk pengiriman data yang handal dan efisien. Besarnya header TCP dapat bervariasi antara 20 hingga 60 byte, tergantung pada apakah opsi tambahan (header options) digunakan atau tidak.

Jika segmen tidak menggunakan opsi tambahan (header options), maka ukuran header TCP adalah 20 byte. Namun, jika opsi tambahan digunakan, ukuran total header TCP dapat mencapai maksimum 60 byte, di mana 20 byte adalah bagian utama dari header dan sisanya adalah untuk opsi tambahan.






State transition diagram (DIAGRAM KEADAAN TRANSISI)

Perangkat lunak TCP dibuat sebagai sebuah finite state machine (Keadaan batasan mesin). Maksudnya, mesin yang melakukan proses dengan TCP ini melewati sejumlah keadaan suatu proses

  • CLOSED: Tidak ada koneksi aktif. Proses TCP berada dalam mode pasif dan tidak menunggu atau menjalankan aktivitas komunikasi.
  • LISTEN: Server siap menerima panggilan koneksi dari klien. Ini adalah keadaan yang terjadi saat server menunggu klien untuk memulai proses koneksi.
  • SYN-SENT: Permintaan koneksi telah dikirimkan oleh klien, dan proses TCP menunggu konfirmasi (acknowledgment) dari server.
  • SYN-RCVD: Server telah menerima permintaan koneksi (SYN) dari klien dan mengirimkan kembali konfirmasi (acknowledgment) kepada klien.
  • ESTABLISHED: Koneksi telah berhasil didirikan, dan proses TCP dapat mulai bertukar data antara klien dan server.
  • FIN-WAIT-1: Aplikasi di salah satu sisi menginginkan penutupan koneksi dan telah mengirimkan sinyal penutupan (FIN), menunggu konfirmasi dari sisi lain.
  • FIN-WAIT-2: Proses TCP menunggu sinyal penutupan (FIN) dari sisi lain setelah mengirimkan sinyal penutupan sendiri.
  • CLOSING: Kedua sisi telah memutuskan untuk menutup koneksi secara bersama-sama. Proses TCP menunggu konfirmasi dari sisi lain setelah mengirimkan sinyal penutupan.
  • TIME-WAIT: Proses TCP menunggu untuk jangka waktu tertentu setelah menutup koneksi untuk memastikan bahwa semua segmen terkait telah diselesaikan.
  • CLOSE-WAIT: Server menunggu aplikasi untuk menutup koneksi setelah menerima sinyal penutupan (FIN) dari klien.
  • LAST-ACK: Server telah mengirimkan sinyal penutupan (FIN) kepada klien dan menunggu konfirmasi terakhir sebelum menutup koneksi.

FSM TCP membantu dalam memahami dan mengelola proses komunikasi TCP dengan menyediakan pandangan yang sistematis tentang berbagai keadaan yang mungkin terjadi selama proses koneksi dan penutupan. Dengan pemodelan ini, implementasi protokol TCP dapat dilakukan dengan lebih terstruktur dan dapat diuji dengan baik.



Protokol UDP





sama seperti TCP fungsi UDP adalah mengurus komunikasi proces to proces. akan tetapi dalam hal koneksi UdP tidak memerlukan insiasi yang rumit atau pengirimn data dilakukan secara langsung tanpa mengkhawatirkan kehilangan data. Hal ini membuat UDP menjadi pilihan yang lebih baik untuk aplikasi yang membutuhkan latensi yang rendah dan dapat mentolerir kehilangan beberapa paket data, seperti streaming video atau game online. Namun, karena tidak ada mekanisme pemulihan atau kontrol aliran bawaan, pengguna UDP harus menangani masalah kehilangan paket atau kegagalan pengiriman secara mandiri.

untuk tetap terhubung dengan server dan memastikan data terkirim ke tujuan yang benar UDP membutuhkan socket addres, yakni gabungan dari alamat IP dan nomor port. Alamat IP digunakan untuk memastikan data sampai kepada alamat yangbenar dan nomor port digunakan untuk mengarahkan data ke layanan atau aplikasi yang sesuai di perangkat tujuan


Berikut adalah beberapa well-known port untuk protokol UDP:

1. Echo (Port 7): Mengembalikan kembali pesan yang diterima ke pengirim.
2. Discard (Port 9): Mengabaikan pesan yang diterima.
3. Daytime (Port 13): Mengembalikan tanggal dan waktu saat ini.
4. Quote (Port 17): Mengembalikan kutipan hari.
5. Chargen (Port 19): Mengembalikan string karakter secara terus-menerus.
6. Nameserver (Port 53): Digunakan untuk layanan domain name (DNS).
7. Bootps (Port 67): Port server untuk mendownload informasi bootstrap.
8. Bootpc (Port 68): Port client untuk mendownload informasi bootstrap.
9. TFTP (Port 69): Protokol Trivial File Transfer Protocol.
10. RPC (Port 111): Remote Procedure Call.
11. NTP (Port 123): Network Time Protocol, digunakan untuk sinkronisasi waktu di jaringan.
12. SNMP (Port 161 dan 162): Simple Network Management Protocol, digunakan untuk monitoring dan mengelola perangkat jaringan. Port 161 digunakan untuk permintaan, sedangkan port 162 digunakan untuk peringatan atau notifikasi.

Port-port ini dapat digunakan untuk berbagai tujuan dalam aplikasi jaringan yang menggunakan protokol UDP. Beberapa di antaranya juga dapat digunakan untuk TCP, tergantung pada kebutuhan aplikasi.

user datagram

Paket UDP disebut user datagram . User datagram ini memiliki ukuran header yang tetap sebesar 8 byte

kegunaan UDP 




Protokol UDP memiliki berbagai kegunaan dalam konteks jaringan komputer:

  • Request-Response Communication: UDP cocok digunakan untuk proses yang membutuhkan komunikasi request-respons, di mana klien mengirim permintaan kepada server dan server merespons tanpa perlu membangun koneksi yang rumit. Karena UDP tidak memerlukan pembentukan koneksi sebelum pertukaran data, ini membuatnya efisien untuk komunikasi yang sederhana dan cepat.
  • Flow Control dan Error Control: Secara umum, UDP minim memperhatikan masalah flow control (pengaturan aliran data) dan error control (deteksi dan pemulihan kesalahan dalam pengiriman data). Namun, beberapa protokol seperti TFTP (Trivial File Transfer Protocol) menerapkan mekanisme internal untuk mengatur aliran data dan memperbaiki kesalahan, meskipun itu adalah pengecualian daripada aturan umum dalam protokol UDP.
  • Multicasting dan Broadcasting: UDP sangat cocok untuk penggunaan multicasting dan broadcasting di lapisan transport. Multicasting memungkinkan pengiriman satu paket data kepada beberapa tujuan sekaligus, sementara broadcasting memungkinkan pengiriman satu paket data kepada semua perangkat dalam jaringan. Fitur ini berguna untuk aplikasi yang memerlukan pengiriman data ke beberapa penerima secara bersamaan, seperti video streaming atau game online.
  • Manajemen Proses: Protokol UDP juga digunakan untuk manajemen proses, seperti dalam aplikasi SNMP (Simple Network Management Protocol). SNMP digunakan untuk mengumpulkan informasi tentang perangkat jaringan dan mengelola konfigurasi mereka. Penggunaan UDP di sini memungkinkan pertukaran informasi yang cepat dan sederhana antara perangkat jaringan dan manajemen jaringan.
  • Update Protokol Routing: UDP sering digunakan untuk mengirimkan pembaruan protokol routing, seperti pada protokol RIP (Routing Information Protocol). Protokol routing digunakan oleh perangkat jaringan untuk bertukar informasi tentang topologi jaringan dan memutuskan rute terbaik untuk mengirimkan paket data. UDP memberikan cara yang efisien untuk mengirimkan pembaruan routing antara perangkat jaringan tanpa memerlukan overhead yang besar.



Posting Komentar

Lebih baru Lebih lama