Mengenal Tentang TCP : Pengertian , Karakteristik, Kelebihan Dan Kegunaan

Komputer dapat berkomunikasi satu sama lain menggunnakan jaringan internet jika komputer tersebut mengikuti jalur komunikasi standar yang ditetapkan. Dalam Hal ini adalah TCP/IP yang digunakan sebagai standar protokol pertukaran data dalam jaringan global internet. Komunikasi dalam dunia komputer diartikan sebagai proses download (menerima) dan upload (mengirim) data atau sering kita sebut komputer sudah bisa terhubung, kalau sudah terhubung berarti komputer (pc, laptop, smartphone, smartdevice) sudah bisa melakukan proses komunikasi (kirim dan terima data).

Data-data yang dikirim melalui jaringan disebut sebagai paket, seperti halnya paket dalam dunia nyata, paket harus diberi label dan diproses oleh masing masing bagian/divisi agar paket dapat sampai di tujuan dengan selamat. Jika paket berukuran besar maka perlu dipecah agar muat sesuai ukuran jalan yang akan dilalui, setiap pecahan harus diberi label agar nantinya gampang disatukan lagi, TCP/IP dirancang dengan tujuan ini.

Pengertian TCP

TCP (Transmission Control Protocol) merupakan suatu protokol yang berada di lapisan transpor (baik itu dalam tujuh lapis model referensi OSI atau model DARPA) yang berorientasi sambungan (connection-oriented) dan dapat diandalkan (reliable). TCP dipakai untuk aplikasi-aplikasi yang membutuhkan keandalan data.

Setelah komputer dibuat dan mengikuti standar yang ditetapkan, diberi network interface dan terhubung ke jaringan yang ada, maka komputer dapat berkomunikasi dengan banyak komputer di jaringan dalam satu waktu. Komunikasi yang dimaksuci di sini adalah menerima dan mengirim data. 

Gambaran proses komunikasinya :

  1. Data dipecah menjadi paket kecil dengan tujuan agar bisa ditransmisikan melalui niedia dan protocol yang sesuai, setiap paket data diberi label dan tujuan paket dikirim.
  2. Paket-paket akan melewati router di dalam jaringan internet.Router bertugas untuk mengantar dan menentukan rute dari paket yang dikirimkannya. Dalam jaringan yang cukup besar, Paket-paket akan melewati puluhan bahkan ratusan router.Setiap router hanya mengantarkan paket ke router terdekat sambil dicarikan jalan/router yang pas.
  3. Ketika paket sampai pada tujuan, TCP/IP akan bertugas sestiai tugas di divisi/layer masing2-masing, dimulai dari layer paling bawah yang menerjemahkan signal/isyarat menjadi logical data dan diteruskan ke layer di atasnya untuk memastian apakah paket data sudah diterima atau belum disesuaikan dengan pemilihan protocol TCP/UDP. Jika protocolnya TCP maka jika ada bagian paket dari data yang hilang maka TCP akan meminta untuk dikirim ulang. Setelah sesuai paket, data akan dirakit dan disusun seperti bentuk aslinya dan diteruskan ke layer di atasnya hingga berbentuk file seperti aslinya ketika dikirim.

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: 
  1. Host pertama (yang ingin membuat koneksi) akan mengirimkan sebuah segmen TCP dengan flag SYN diaktifkan kepada host kedua (yang hendak diajak untuk berkomunikasi). 
  2. Host kedua akan meresponsnya dengan mengirimkan segmen dengan acknowledgment dan juga SYN (kontrol SYNACK) kepada host pertama. 
  3. Host pertama selanjutnya akan mulai saling bertukar data dengan host kedua.

Sedangkan pada saat menutup koneksi yang terjadi adalah: 
  1. Cient mengirim kontrol TCP FIN ke server.
  2. Server menerima FIN, dan membalas dengan ACK. Menutup koneksi dan mengirimkan FIN ke client
  3. Client menerima FIN dan membalas ACK. 
  4. Masuk pada masa menunggu balasan ACK terhadap dari server.
  5. Server menerima ACK dan koneksi tertutup.
TCP menggunakan proses jabat tangan (hand shake) yang sama untuk mengakhiri koneksi yang dibuat, yang berbeda hanya flagnya.Hal ini untuk 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.

Karakteristik dari TCP

  1. Reliable berarti data ditransfer ke tujuannya dalam suatu urutan seperti ketika dikirim.
  2. Berorientasi sambungan (connection-oriented): Sebelum data dapat ditransmisikan antara dua host, dua proses yang berjalan pada lapisan aplikasi harus melakukan negosiasi untuk membuat sesi koneksi terlebih dahulu. Koneksi TCP ditutup menggunakan proses terminasi koneksi TCP (TCP connection termination). 
  3. 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.
  4. Memiliki layanan flow control: Untuk mencegah data terlalu banYak dikirimkan pada satu waktu, yang akhirnya membuat macet" jaringan internetwork IP (bottle neck), 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 memperoleh data yang tidak dapat disangganya (buffer), TCP juga mengimplementasikan flow control dalam pihak penerima, yang mengindikasikan jurnlah buffer yang masih tersedia dalam pihak penerima.
  5. Melakukan segmentasi terhadap data yang datang dari lapisan aplikasi (dalam DARPA Reference Model).
  6. 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. TCP tidak menyediakan layanan pengiriman data secara one-to-many. 

Kegunaan dari TCP

  • Menyediakan komunikasi logika antar proses aplikasi yang berjalan pada host yang berbeda. 
  • Protokol transport berjalan pada end systems
  • Pengiriman file (file transfer). File Transfer Protokol (FTP) memungkinkan pengguna komputer yang satu untuk dapat mengirim ataupun menerima file ke komputer jaringan. Karena masalah keamanan data, maka FTP seringkali memerlukan nama pengguna (username) dan password, meskipun banyak juga FTP yang dapat diakses melalui anonymous, alias tidak berpassword. (lihat RFC 959 untuk spesifikasi FTP). 
  • Remote login. Network terminal Protokol (telnet) memungkinkan pengguna komputer dapat melakukan log in ke dalam suatu komputer di dalam suatu jaringan. Hal ini berarti pengguna menggunakan komputernya sebagai perpanjangan tangan dari lintas komputer jaringan tersebut. (lihat RFC 854 dan 855 untuk alami spesifikasi telnet lebih lanjut).
  • Computer mail. Digunakan untuk sistem elektronik mail.
  • Network File System (NFS). Pelayanan akses file-file jarak jauh yang memungkinkan klien mengakses file-file pada komputer jaringan jarak jauh walaupun file tersebut disimpan secara lokal.(lihat RFC 1001 dan 1002 untuk keterangan lebih lanjut).
  • Remote execution. Memungkinkan pengguna komputer untuk menjalankan suatu program di dalam komputer yang berbeda.Biasanya berguna jika pengguna menggunakan komputer yang terbatas, sedangkan ia memerlukan sumber yang banyak dalam suatu sistem komputer. Ada beberapa jenis remote execution, ada yang berupa perintah-perintah dasar saja, yaitu yang dapat dijalankan dalam sistem komputer yang sama dan ada pula menggunakan prosedure remote call system, yang memungkinkan program memamanggil  subroutine yang akan dijalankan di system komputer lain. ( Sebagai Contoh dalam Berkeley UNIX ada perintah "rsh" dan "rexec").
  • Name servers. Nama database alamat yang digunakan pada internet (Lihat RFC 822 dan 823 yang menjelaskan mengenai penggunaan protokol name server yang bertujuan untuk menentukan nama host di internet).

Kelebihan TCP/IP dari protokol lain

  • TCP/IP adalah protokol yang bisa diarahkan. Artinya ia bisa mengirimkan datagram melalui rute-rute yang telah ditentukan sebelumnya. Hal ini dapat mengurangi kepadatan lalu lintas pada jaringan, serta dapat membantu jika jaringan mengalami kegagalan, TCP/IP dapat mengarahkan data melalui jalur lain. 
  • Memiliki mekanisme pengiriman data yang handal dan efisien. 
  • Bersifat open platform atau platform independent, yaitu tidak terikat oleh jenis hardware atau software tertentu. Karena sifatnya yang terbuka, TCP/IP bisa mengirimkan data antara sistem-sistem komputer yang berbeda yang menjalankan pada sistem-sistem operasi yang berbeda pula.
  • TCP/IP terpisah dari hardware yang mendasarinya. Protokol ini dapat dijalankan pada jaringan Ethernet, Token ring, X.25, dan bahkan melalui sambungan telepon. 
Referensi 
    - Buku Sekolah hehehe...