TCP
TCP (Transmission Control Protokol) merupakan protokol yang berada pada lapisan transport yang reliabel karena berorientasi connection.
Karakteristik TCP :
- Connection oriented, untuk dapat melakukan transmisi antara host-host harus melakukan kesepakatan untuk sesi koneksi terlebih dahulu.
- Full Duplex, pada setiap host memiliki dua jalur transmisi yaitu jalur keluar dan masuk sehingga data dapat dikirim dan diterima secara simultan. Header TCP terdiri dari nomor urut (TCP sequence number) dari data yang dikirimkan dan sebuah data acknowledgement dari data yang masuk.
- Dapat diandalkan (reliabel), TCP akan mengurutkan paket data yang dikirimkan dalam segmen-segmen untuk dikirimkan dan menunggu ACK dari penerima. Apabila tidak ada ACK maka segmen tersebut akan dikirim ulang hingga data terkirim.
- Byte Stream,TCP melihat data yang dikirim maupun diterima dalam bentuk byte kemudian akan diterjemahkan oleh layer aplikasi menjadi bahasa yang dapat dipahami TCP.
- Memiliki layanan flow control,membatasi data yang dikirim terlalu banyak pada suatu waktu yang dapat membuat macet jaringan.
- Melakukan segmentasi terhadap data yang datang dari lapisan aplikasi.
- Mengirimkan paket secara "one-to-one".
Port TCP mampu mengindikasikan sebuah lokasi tertentu untuk menyampaikan
segmen-segmen TCP yang dikirimkan yang diidentifikasi dengan TCP Port Number.
Nomor-nomor di bawah angka 1024 merupakan port yang umum digunakan dan
ditetapkan oleh [[IANA|IANaplikasi, sementara port UDP merepresentasikan
sebuah antrean pesan UDP untuk protokol lapisan aplikasi. Selain itu,
protokol lapisan aplikasi yang menggunakan port TCP dan port UDP dalam
nomor yang sama juga tidak harus sama. Sebagai contoh protokol Extended Filename Server (EFS) menggunakan port TCP dengan nomor 520, dan protokol Routing Information Protocol
(RIP) menggunakan port UDP juga dengan nomor 520. Jelas, dua protokol
tersebut sangatlah berbeda. Karenanya, untuk menyebutkan sebuah nomor
port, sebutkan juga jenis port yang digunakannya, karena hal tersebut
mampu membingungkan.
Proses pembuatan koneksi TCP disebut juga dengan "Three-way Handshake".
Tujuan metode ini adalah agar dapat melakukan sinkronisasi terhadap
nomor urut dan nomor acknowledgement yang dikirimkan oleh kedua pihak
dan saling bertukar ukuran TCP Window. Prosesnya dapat digambarkan
sebagai berikut:
- Host pertama (yang ingin membuat koneksi) akan mengirimkan sebuah segmen TCP dengan flag SYN diaktifkan kepada host kedua (yang hendak diajak untuk berkomunikasi).
- Host kedua akan meresponsnya dengan mengirimkan segmen dengan acknowledgment dan juga SYN kepada host pertama.
- Host pertama selanjutnya akan mulai saling bertukar data dengan host kedua.
TCP menggunakan proses jabat tangan yang sama untuk mengakhiri koneksi yang dibuat. Hal ini menjamin dua host
yang sedang terkoneksi tersebut telah menyelesaikan proses transmisi
data dan semua data yang ditransmisikan telah diterima dengan baik.
Itulah sebabnya, mengapa TCP disebut dengan koneksi yang reliable
UDP
UDP (User Data Protokol) merupakan salah satu protokol lapisan transport TCP/IP yang mendukung komunikasi unreliable dan connectionless antara host-host dalam jaringan komputer.
Karakteristik UDP :
- Connectionless, data UDP akan langsung dikirim tanpa melakukan negosiasi koneksi antar host.
- Unreliable, dataUDP akan dikirimkan sebagai datagram tanpa nomor urut atau pesan acknowledgment sehingga protokol lapisan aplikasi yang berjalan di atas UDP harus melakukan pemulihan terhadap pesan-pesan yang hilang selama transmisi.
- UDP menyediakan mekanisme untuk mengirim pesan-pesan ke sebuah protokol lapisan aplikasi atau proses tertentu di dalam sebuah host dalam jaringan yang menggunakan TCP/IP.
- UDP tidak menyediakan mekanisme penyanggaan (buffering) dari data yang masuk ataupun data yang keluar
- UDP tidak menyediakan mekanisme segmentasi data yang besar ke dalam segmen-segmen data, seperti yang terjadi dalam protokol TCP
- UDP tidak menyediakan mekanisme flow-control, seperti yang dimiliki oleh TCP
Sebuah UDP port berfungsi sebagai sebuah multiplexed message queue,
yang berarti bahwa UDP port tersebut dapat menerima beberapa pesan
secara sekaligus. Setiap port diidentifikasi dengan nomor yang unik,
seperti halnya TCP, tetapi meskipun begitu, UDP Port berbeda dengan TCP Port meskipun memiliki nomor port yang sama. Di bawah ini beberapa UDP port yang telah dikenal secara luas :
53 : DNS (Domain Name System)
67 : BOOTP Client (DHCP)
68 : BOOTP Server (DHCP)
69 : Trivial File Transfer Protocol (TFTP)
137 : NetBIOS Name Service
138 : NetBIOS Datagram Service
161 : Simple Network Management Protokol (SNMP)
445 : Server Message Blok (SMB)
520 : Routing Information Protokol (RIP)
1812/1813 : Remote Authentication Dial-In User Service (RADIUS)
Monitoring protokol TCP
Untuk memulai monitoring, pertama-tama menghubungkan Laptop dengan internet. Membuka aplikasi wireshark lalu mulai mengcapture jaringan dimisalkan membuka google. Kemudian mengetikkan tcp.port==80 pada filter untuk melihat trafik dari HTTP.
Proses yang dilakukan TCP yaitu :
- LISTEN, menunggu connection request dari client. ( di set oleh TCP Server ).
- SYN-SENT, client telah mengirim paket SYN dan ACK ke TCP Server , kemudian client menunggu paket SYN dan ACK balasan dari Server.
- SYN-RECEIVED, menunggu dari TCP Client untuk mengembalikan state acknowledgment setelah mengirim state acknowledgment ke TCP Client.
- ESTABLISHED, Koneksi telah dibangun, client server siap untuk mengirim dan menerima data.
- TIME-WAIT, merupakan waktu yang dibutuhkan untuk memastikan TCP menerima state acknowledgment pada saat menghentikan koneksi.
Monitoring protokol UDP
Dari hasil capture wireshark diatas, ketikkan udp.port==53 untuk melihat trafik dari DNS.