Selasa, 06 Januari 2015

TCP (Transmission Control Protocol )

TCP (Transmission Control Protocol ) adalah suatu protokol yang berada pada lapisan trasnsport pada lapisan OSI yang bersifat connection-oriented dan reliable yang mana berfungsi untuk mengirimkan paket secara satu per satu. Komunikasi data antar host terjadi melalui proses sinkronisasi untuk membentuk virtual connection setiap  session antar host. Proses sinkronisasi ini meyakinkan kedua sisi apakah sudah siap transmisi data apa belum.

Komponen pengontrol utama atas protocol interkoneksi disebut sebagai "Program pengontrol transmisi" yang menggabungkan baik tautan koneksi terorientasi dan layanan datagram antar host. Program pengontrol transmisi monolitik ini kemudian dipecah ke dalam arsitektur modular yang terdiri atas Protokol pengontrol transmisi pada lapisan koneksi terorientasi dan Protokol internet pada lapisan datagram. Pada Model protocol interkoneksi  ini kemudian dikenal dengan istilah TCP/IP, meski secara formal istilah yang digunakan adalah Paket protokol internet.
Model layer TCP/IP tidak memiliki session dan presentation layer. TCP hanya berjalan pada mesin akhir dan oleh karena itu TCP tidak ada pada router atau dalam jaringan internal.
Karakteristik TCP
1.      Full Duplex Data Transfer
yaitu level aplikasi data dapat ditransmisikan pada kedua-duanya antara dua host.  Misalnya  jika koneksi  TCP yang ada antara proses A di satu endsystem dan proses B di endsystem lain, kemudian level aplikasi data dapat mengalir dari A ke B pada saat bersamaan.
2.      Point To Point Connection  (sambungan titik ke titik)
Koneksi Transmission Control Protocol selalu point-to-point, yaitu, antara satu pengirim dan satu  penerima. Transmisi data dari satu pengirim ke beberapa penerima sekaligus tidaklah mungkin jika koneksi  TCP diadopsi oleh perangkat.
3.      Error Control (Mengontrol Kesalahan)
Transmission Control Protocol menawarkan transfer data ke komputer lain terbebas dari kesalahan. Untuk routing yang efisien, data dibagi menjadi paket-paket dan masing-masing diteruskan ke lapisan internet. Di tempat tujuan, proses TCP-penerima menyusun kembali pesan yang diterima ke aliran output.
4.      Flow Control (Kontrol Aliran)
Transmission Control Protocol juga menangani flow control untuk memastikan pengirim cepat  tidak  mengirimkan data pada tingkat yang lebih tinggi dari tingkat penerimaan receiver.
5.      Realiable (dapat diandalkan)
maksudnya Data yang dikirimkan ke sebuah koneksi TCP akan diurutkan dengan sebuah nomor urut paket dan akan mengharapkan paket possitive acknowledgment (sebuah transmisi yang dikirimkan oleh pihak station penerima dalam jaringan kepada pihak pengirim bahwa data yang dikirimkan telah diterima dengan sempurna tanpa ada kesalahan) dari penerima. Jika tidak ada paket Acknowledgment dari penerima, maka segmen TCP (protocol data unit dalam protokol TCP) akan ditranmisikan ulang. Pada pihak penerima, segmen-segmen duplikat akan diabaikan dan segmen-segmen yang datang tidak sesuai dengan urutannya akan diletakkan di belakang untuk mengurutkan segmen-segmen TCP. Untuk menjamin integritas setiap segmen TCP, TCP mengimplentasikan penghitungan TCP Cheksum.
6.      Three Way Handshake 
Klien pertama mengirimkan segmen TCP-khusus; server menanggapi dengan segmen TCP-khusus kedua dan akhirnya klien menanggapi lagi dengan segmen khusus ketiga. Dua yang pertama tidak mengandung segmen application-layer data (lapisan aplikasi data ) ketiga segmen tersebut dapat membawa beberapa aplikasi data. Karena tiga segmen yang dikirim antara dua host, prosedur pembentukan koneksi ini sering disebut Three Way Handshake (Jabat tangan 3 jalur) . Setelah koneksi TCP terbentuk, kedua proses aplikasi dapat mengirim data satu sama lain.

 

Cara Kerja TC/IP

Adapun langkah-langkah cara kerja dari protokol TCP/IP ini adalah :

1.      Pertama, datagram dibagi-bagi ke dalam bagian-bagian kecil yang sesuai dengan ukuran bandwith (lebar frekuensi) dimana data tersebut akan dikirimkan.

  1. Pada lapisan TCP, data tersebut lalu “dibungkus” dengan informasi header yang dibutuhkan. Misalnya seperti cara mengarahkan data tersebut ke tujuannya, cara merangkai kembali kebagian-bagian data tersebut jika sudah sampai pada tujuannya, dan sebagainya.
  2. Setelah datagram dibungkus dengan header TCP, datagram tersebut dikirim kepada lapisan IP.
  3. IP menerima datagram dari TCP dan menambahkan headernya sendiri pada datagram tersebut.
  4. IP lalu mengarahkan datagram tersebut ke tujuannya.
  5. Komputer penerima melakukan proses-proses perhitungan, ia memeriksa perhitungan checksum yang sama dengan data yang diterima.
  6. Jika kedua perhitungan tersebut tidak cocok berarti ada error sewaktu pengiriman dan datagram akan dikirimkan kembali.
Kegunaan TCP
Beberapa kegunaan dari TCP yaitu :
  1. Menyediakan komunikasi logika antar proses aplikasi yang berjalan pada host yang berbeda.
  2. protokol transport berjalan pada end systems.
  3. Pengiriman file (file transfer). File Transfer Protokol (FTP) memungkinkan pengguna komputer yg satu untuk dapat mengirim ataupun menerima file ke komputer jaringan.
  4. Remote login. Network terminal Protokol (telnet) memungkinkan pengguna komputer dapat melakukan log in ke dalam suatu komputer didalam suatu jaringan. Jadi hal ini berarti bahwa pengguna menggunakan komputernya sebagai perpanjangan tangan dari komputer jaringan tersebut.
  5. Computer mail. Digunakan untuk menerapkan sistem elektronik mail.
  6. Network File System (NFS). Pelayanan akses file-file jarak jauh yg memungkinkan klien-klien untuk mengakses file-file pada komputer jaringan jarak jauh walaupun file tersebut disimpan secara local.
  7. remote execution. Memungkinkan pengguna komputer untuk menjalankan suatu program didalam komputer yg berbeda. Biasanya berguna jika pengguna menggunakan komputer yg terbatas, sedangkan ia memerlukan sumber yg banyak dalam suatu system komputer. Ada beberapa jenis remote execution, ada yg berupa perintah-perintah dasar saja, yaitu yg dapat dijalankan dalam system komputer yg sama dan ada pula yg menggunakan “prosedure remote call system”, yg memungkinkan program untuk memanggil subroutine yg akan dijalankan di system komputer yg berbeda. (sebagai contoh dalam Berkeley UNIX ada perintah “rsh” dan “rexec”) 
Hubungan Antara TCP dan system terdistribusi
Sistem distribusi merupakan sebuah sistem yang terintegrasi dimana semua komponennya berada pada jaringan komputer baik secara lokal maupun secara global. Komponen tersebut saling berkomunikasi dan melakukan koordinasi hanya dengan pengiriman pesan (message passing). Sistem terdisribusi mempunyai memori lokal pada setiap komponennya sehingga memungkinkan pembagian beban kerja. Sistem terdistribusi memungkinkan penggunaan dan pengaksesan jarak jauh melalui jaringan TCP/IP, penggunaan resource pun dapat di minimalisir melalui sharing yang dilakukan pada jaringan seperti penggunaan printer pada jaringan lokal atau intranet.
Contoh penerapannya :Intranet adalah sebuah jaringan privat yang menggunakan protokol-protokol Internet (TCP/IP), untuk membagi informasi rahasia perusahaan atau operasi  dalam perusahaan tersebut kepada karyawannya.
·         - Bersifat internal (contoh: web internal)
·    - Untuk membangun sebuah intranet, maka sebuah jaringan haruslah memiliki beberapa komponen yang membangun Internet yakni protokol Internet (Protokol membangun Internet, yakni protokol Internet (Protokol TCP/IP, alamat IP, dan protokol lainnya), klien dan juga server.
·         -Biasanya proprietary.
 -Terhubung ke internet (melalui firewall).

Referensi :