TCP/IP (singkatan dari Transmission Control Protocol/Internet Protocol) adalah standar komunikasi data yang digunakan oleh komunitas internet dalam proses tukar-menukar data dari satu komputer ke komputer lain di dalam jaringan Internet. Protokol ini tidaklah dapat berdiri sendiri, karena memang protokol ini berupa kumpulan protokol (protocol suite). Protokol ini juga merupakan protokol yang paling banyak digunakan saat ini. Data tersebut diimplementasikan dalam bentuk perangkat lunak (software) di sistem operasi. Istilah yang diberikan kepada perangkat lunak ini adalah TCP/IP stack
IP Address versi 4 dan biasa disebut sebagai IPv4 merupakan jenis pengalamatan jaringan (networking) yang digunakan sebagai protokol jaringan TCP/IP. Panjang IP Address versi 4 adalah 32-bit dan secara teoritis dapat mengalamati hingga 4 milyar host komputer atau lebih di seluruh dunia, jumlah host tersebut di peroleh dari 256 (dari 8-bit) pangkat 4 (terdapat 4 oktet) sehingga nilai maksimal dari IP Address versi 4 adalah 255.255.255.255 dimana nilai dihitung dari nol.
Protokol TCP/IP dikembangkan pada akhir dekade 1970-an hingga awal 1980-an sebagai sebuah protokol standar untuk menghubungkan komputer-komputer dan jaringan untuk membentuk sebuah jaringan yang luas (WAN). TCP/IP merupakan sebuah standar jaringan terbuka yang bersifat independen terhadap mekanisme transport jaringan fisik yang digunakan, sehingga dapat digunakan di mana saja. Protokol ini menggunakan skema pengalamatan yang sederhana yang disebut sebagai alamat IP (IP Address) yang mengizinkan hingga beberapa ratus juta komputer untuk dapat saling berhubungan satu sama lainnya di Internet. Protokol ini juga bersifat routable yang berarti protokol ini cocok untuk menghubungkan sistem-sistem berbeda (seperti Microsoft Windows dan keluarga UNIX) untuk membentuk jaringan yang heterogen.
Protokol TCP/IP selalu berevolusi seiring dengan waktu, mengingat semakin banyaknya kebutuhan terhadap jaringan komputer dan Internet. Pengembangan ini dilakukan oleh beberapa badan, seperti halnya Internet Society (ISOC), Internet Architecture Board (IAB), dan Internet Engineering Task Force (IETF). Macam-macam protokol yang berjalan di atas TCP/IP, skema pengalamatan, dan konsep TCP/IP didefinisikan dalam dokumen yang disebut sebagai Request for Comments (RFC) yang dikeluarkan oleh IETF.
TCP/IP pun mempunyai beberapa layer, layer-layer itu adalah :
- IP (internet protocol) yang berperan dalam pentransmisian paket data dari node ke node. IP mendahului setiap paket data berdasarkan 4 byte (untuk versi IPv4) alamat tujuan (nomor IP). Internet authorities menciptakan range angka untuk organisasi yang berbeda. Organisasi menciptakan grup dengan nomornya untuk departemen. IP bekerja pada mesin gateaway yang memindahkan data dari departemen ke organisasi kemudian ke region dan kemudian ke seluruh dunia.
- TCP (transmission transfer protocol) berperan didalam memperbaiki pengiriman data yang benar dari suatu klien ke server. Data dapat hilang di tengah-tengah jaringan. TCP dapat mendeteksi error atau data yang hilang dan kemudian melakukan transmisi ulang sampai data diterima dengan benar dan lengkap.
- Sockets yaitu merupakan nama yang diberikan kepada subrutin paket yang menyediakan akses ke TCP/IP pada kebanyakan sistem.
Protokol (komputer)
Protokol adalah sebuah aturan atau standar yang mengatur atau mengijinkan terjadinya hubungan, komunikasi, dan perpindahan data antara dua atau lebih titik komputer. Protokol dapat diterapkan pada perangkat keras, perangkat lunak atau kombinasi dari keduanya. Pada tingkatan yang terendah, protokol mendefinisikan koneksi perangkat keras.
Protokol perlu diutamakan pada penggunaan standar teknis, untuk menspesifikasi bagaimana membangun komputer atau menghubungkan peralatan perangkat keras. Protokol secara umum digunakan pada komunikasi real-time dimana standar digunakan untuk mengatur struktur dari informasi untuk penyimpanan jangka panjang.
Sangat susah untuk menggeneralisir protokol dikarenakan protokol memiliki banyak variasi didalam tujuan penggunaanya. Kebanyakan protokol memiliki salah satu atau beberapa dari hal berikut:
- Melakukan deteksi adanya koneksi fisik atau ada tidaknya komputer atau mesin lainnya.
- Melakukan metoda “jabat-tangan” (handshaking).
- Negosiasi berbagai masam karakteristik hubungan.
- Bagaimana mengawali dan mengakhiri suatu pesan.
- Bagaimana format pesan yang digunakan.
- Yang harus dilakukan saat terjadi kerusakan pesan atau pesan yang tidak sempurna.
- Mendeteksi rugi-rugi pada hubungan jaringan dan langkah-langkah yang dilakukan selanjutnya
- Mengakhiri suatu koneksi.
Alamat IP
Alamat IP (Internet Protocol Address atau sering disingkat IP) adalah deretan angka biner antar 32-bit sampai 128-bit yang dipakai sebagai alamat identifikasi untuk tiap komputer host dalam jaringan Internet. Panjang dari angka ini adalah 32-bit (untuk IPv4 atau IP versi 4), dan 128-bit (untuk IPv6 atau IP versi 6) yang menunjukkan alamat dari komputer tersebut pada jaringan Internet berbasis TCP/IP.
Sistem pengalamatan IP ini terbagi menjadi dua, yakni:
- IP versi 4 (IPv4)
- IP versi 6 (IPv6)
Perbandingan Alamat IPv6 dan IPv4
berikut menjelaskan perbandingan karakteristik antara alamat IP versi 4 dan alamat IP versi 6.
Kriteria | ||
Panjang alamat | 32 bit | 128 bit |
Jumlah total host (teoritis) | 232=±4 miliar host | 2128 |
Menggunakan kelas alamat | Tidak | |
Alamat multicast | Kelas D, yaitu 224.0.0.0/4 | Alamat multicast IPv6, yaitu FF00:/8 |
Alamat broadcast | Tidak ada | |
Alamat yang belum ditentukan | 0.0.0.0 | :: |
127.0.0.1 | ::1 | |
Alamat IP publik | Alamat IPv6 unicast global | |
Alamat IP pribadi | Alamat IPv6 unicast site-local (FEC0::/48) | |
Konfigurasi alamat otomatis | Ya (APIPA) | Alamat IPv6 unicast link-local (FE80::/64) |
Representasi tekstual | Dotted decimal format notation | Colon hexadecimal format notation |
Fungsi Prefiks | Subnet mask atau panjang prefiks | Panjang prefiks |
A Resource Record (Single A) | AAAA Resource Record (Quad A) |
Alamat IP yang dimiliki oleh sebuah host dapat dibagi dengan menggunakan subnetmask jaringan kedalam dua buah bagian yaitu :
- Network Identifier/NetID atau Network Address (alamat jaringan) yang digunakan secara khusus untuk mengidentifikasi alamat jaringan dimana host berada. Jika semua Node di dalam jaringan logis yang sama tidak dikonfigurasikan dengan menggunakan network identifier yang sama, maka terjadi error yang disebut routing error. Semua sistem didalam sebuah jaringan fisik yang sama harus memiliki alamat network identifier yang sama pula. Alamat network identifier tidak boleh bernilai 0 atau 255
- Host Identifier/HostID atau Host Address (alamat host) yang digunakan khusus untuk mengidentifikasikan alamat host (dapat berupa workstation, server atau sistem lainnya yang berbasis TCP/IP) di dalam jaringan. Nilai host identifier tidak boleh bernilai 0 atau 255 dan harus bersifat unik di dalam network identifier/segmen jaringan dimana host berada.
Alamat IPv4 dibagi menjadi beberapa jenis, sebagai berikut :
- Alamat Unicast, alamat IPv4 yang ditentukan untuk sebuah interface jaringan yang dihubungkan ke sebuah Internetwork IP. Alamat Unicast ini digunakan dalam komunikasi point-to-point.
- Alamat Broadcast, alamat IPv4 yang didesain agar diproses oleh setiap node IP dalam segmen jaringan yang sama . Alamat broadcast digunakan dalam komunikasi one-to-everyone.
- Alamat Multicast, alamat IPv4 yang didesain agar diproses oleh satu atau beberapa node dalam segmen jaringan yang sama atau berbeda. Alamat multicast digunakan dalam komunikasi one-to-many.
Alamat IPv4 dibagi kedalam beberapa kelas, hal ini dilihat dari oktet pertamanya. Sebenarnya pembeda kelas IP versi 4 adalah pola biner yang terdapat dalam oktet pertama (adalah bit-bit awal/high-order bit). untuk mudah memahami berikut saya sajikan tabel yang menggunakan representasi desimal :
Kelas Alamat IP | Oktet pertama (desimal) | Oktet Pertama (biner) | Keterangan |
Kelas A | 1-126 | 0xxx xxxx | Alamat unicast untuk jaringan skala besar |
Kelas B | 128-191 | 10xx xxxx | Alamat unicast untuk jaringan skala menengah hingga besar |
Kelas C | 192-223 | 110x xxxx | Alamat unicast untuk jaringan skala kecil |
Kelas D | 224-239 | 1110 xxxx | Alamat multicast (bukan alamat unicast) |
Kelas E | 240-255 | 1111 xxxx | Umumnya digunakan sebagai alamat percobaan (eksperimen) (bukan alamat unicast) |
KARAKTERISTIK TCP :
- Berorintasi sambung, yaitu sebelum ada komunikasi 2 host, 2 proses yang berada pada layer aplikasi harus negosiasi terlebih dahulu untuk membuat sesi koneksi.
- 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.
- Dapat diandalkan (reliable): Data yang dikirimkan ke sebuah koneksi TCP akan diurutkan dengan sebuah nomor urut paket dan akan mengharapkan paket positive acknowledgment dari penerima. Jika tidak ada paket Acknowledgment dari penerima, maka segmen TCP (protocol data unit dalam protokol TCP) akan ditransmisikan 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 mengimplementasikan penghitungan TCP Checksum.
- Byte stream: TCP melihat data yang dikirimkan dan diterima melalui dua jalur masuk dan jalur keluar TCP sebagai sebuah byte stream yang berdekatan (kontigu). Nomor urut TCP dan nomor acknowlegment dalam setiap header TCP didefinisikan juga dalam bentuk byte. Meski demikian, TCP tidak mengetahui batasan pesan-pesan di dalam byte stream TCP tersebut. Untuk melakukannya, hal ini diserahkan kepada protokol lapisan aplikasi (dalam DARPA Reference Model), yang harus menerjemahkan byte stream TCP ke dalam "bahasa" yang ia pahami.
- 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.
- Melakukan segmentasi terhadap data yang datang dari lapisan aplikasi (dalam DARPA Reference Model) dan 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.
· Port TCP
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 (Internet Assigned Number Authority). Tabel berikut ini menyebutkan beberapa port TCP yang telah umum digunakan.
UDP (User Diagram Protocol) ialah protokol lapisan transprot yang mendukung komunikasi tidak handal tanpa koneksi.
KARAKTERISTIK UDP :
- Connectionless (tanpa koneksi): Pesan-pesan UDP akan dikirimkan tanpa harus dilakukan proses negosiasi koneksi antara dua host yang hendak berukar informasi.
- 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 transmisi. 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.
- 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. Header UDP berisi field Source Process Identification dan Destination Process Identification.
- UDP menyediakan penghitungan checksum berukuran 16-bit terhadap keseluruhan pesan UDP.
UDP tidak menyediakan layanan-layanan antar-host berikut:
- 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.
- 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 sebuah antarmuka di mana data tersebut dikirim. Karena, jika ukuran paket data yang dikirim lebih besar dibandingkan nilai MTU, paket data yang dikirimkan bisa saja terpecah menjadi beberapa fragmen yang akhirnya tidak jadi terkirim dengan benar.
- UDP tidak menyediakan mekanisme flow-control, seperti yang dimiliki oleh TCP.
PENGGUNAAN UDP :
UDP sering digunakan dalam beberapa tugas berikut :
- Protokol yang "ringan" (lightweight): Untuk menghemat sumber daya memori dan prosesor, beberapaprotokol lapisan aplikasi membutuhkan penggunaan protokol yang ringan yang dapat melakukan fungsi- fungsi spesifik dengan saling bertukar pesan. Contoh dari protokol yang ringan adalah fungsi query nama dalam protokol lapisan aplikasi Domain Name System.
- 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)
- Protokol yang tidak membutuhkan keandalan. Contoh protokol ini adalah protokol Routing Information Protocol (RIP).
- Transmisi broadcast: Karena UDP merupakan protokol yang tidak perlu membuat koneksi terlebih dahulu dengan sebuah host tertentu, maka transmisi broadcast pun 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 transmisi one-to-one. Contoh: query nama dalam protokol NetBIOS Name Service.
· PORT UDP
Seperti halnya TCP, UDP juga memiliki saluran untuk mengirimkan informasi antar host, yang disebut dengan UDP Port. Untuk menggunakan protokol UDP, sebuah aplikasi harus menyediakan alamat IP dan nomor UDP Port dari host yang dituju. 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.
http://parapatnotes.blogspot.com/2010/04/karakteristik-tcp-dan-udp.html
http://www.andisyam.web.id/2011/07/ip-address-versi-4.html
http://0ch4.wordpress.com/pengertian-tcpip/
0 komentar:
Posting Komentar