Paket protokol internet

**Suit protokol internet** adalah model jaringan komputer dan rangkaian protokol komunikasi yang digunakan di internet dan jaringan komputer yang mirip. Ia dikenal dengan **TCP/IP** (singkatan dari *[[Transmission Control Protocol]]*/*[[Internet Protocol]]*) yang diterjemahkan menjadi ***Protokol Kendali Transmisi/Protokol Internet***, yang merupakan gabungan dari protokol TCP (*Transmission Control Protocol*) dan IP (*Internet Protocol*) sebagai sekelompok protokol yang mengatur komunikasi data dalam proses tukar-menukar data dari satu komputer ke komputer lain di dalam jaringan internet yang akan memastikan pengiriman data sampai ke alamat yang dituju. 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, karena protokol ini mampu bekerja dan diterapkan pada lintas perangkat lunak dalam berbagai sistem operasi Istilah yang diberikan kepada perangkat lunak ini adalah TCP/IP stack.

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.

## Arsitektur

Arsitektur TCP/IP tidaklah berbasis model referensi tujuh lapis OSI, tetapi menggunakan model referensi DARPA. Seperti diperlihatkan dalam diagram, TCP/IP merngimplemenasikan arsitektur berlapis yang terdiri atas empat lapis. Empat lapis ini, dapat dipetakan (meski tidak secara langsung) terhadap model referensi OSI. Empat lapis ini, kadang-kadang disebut sebagai *DARPA Model*, *Internet Model*, atau *DoD Model*, mengingat TCP/IP merupakan protokol yang awalnya dikembangkan dari proyek ARPANET yang dimulai oleh Departemen Pertahanan Amerika Serikat.

Setiap lapisan yang dimiliki oleh kumpulan protokol (protocol suite) TCP/IP diasosiasikan dengan protokolnya masing-masing. Protokol utama dalam protokol TCP/IP adalah sebagai berikut:
* Protokol lapisan aplikasi: bertanggung jawab untuk menyediakan akses kepada aplikasi terhadap layanan jaringan TCP/IP. Protokol ini mencakup protokol *[[Dynamic Host Configuration Protocol]]* (DHCP), *[[Domain Name System]]* (DNS), Hypertext Transfer Protocol (HTTP), *[[File Transfer Protocol]]* (FTP), *[[Telnet]]*, *[[Simple Mail Transfer Protocol]]* (SMTP), *[[Simple Network Management Protocol]]* (SNMP), dan masih banyak protokol lainnya. Dalam beberapa implementasi stack protokol, seperti halnya Microsoft TCP/IP, protokol-protokol lapisan aplikasi berinteraksi dengan menggunakan antarmuka Windows Sockets (Winsock) atau NetBIOS over TCP/IP (NetBT).
* Protokol lapisan antar-''host'': berguna untuk membuat komunikasi menggunakan sesi koneksi yang bersifat *connection-oriented* atau *broadcast* yang bersifat *connectionless*. Protokol dalam lapisan ini adalah Transmission Control Protocol (TCP) dan User Datagram Protocol (UDP).
* Protokol lapisan ''internetwork'': bertanggung jawab untuk melakukan pemetaan (*[[routing]]*) dan enkapsulasi paket-paket data jaringan menjadi paket-paket IP. Protokol yang bekerja dalam lapisan ini adalah *[[Internet Protocol]]* (IP), *[[Address Resolution Protocol]]* (ARP), Internet Control Message Protocol (ICMP), dan Internet Group Management Protocol (IGMP).
* Protokol lapisan antarmuka jaringan: bertanggung jawab untuk meletakkan frame-frame jaringan di atas media jaringan yang digunakan. TCP/IP dapat bekerja dengan banyak teknologi transport, mulai dari teknologi transport dalam LAN (seperti halnya Eternet dan Token Ring), MAN dan WAN (seperti halnya dial-up modem yang berjalan di atas Public Switched Telephone Network (PSTN), *[[Integrated Services Digital Network]]* (ISDN), serta *[[Asynchronous Transfer Mode]]* (ATM)).

## Pengalamatan
Protokol TCP/IP menggunakan dua buah skema pengalamatan yang dapat digunakan untuk mengidentifikasikan sebuah komputer dalam sebuah jaringan atau jaringan dalam sebuah internetwork, yakni sebagai berikut:
* Pengalamatan IP: yang berupa alamat logis yang terdiri atas 32-bit (empat oktet berukuran 8-bit) yang umumnya ditulis dalam format `www.xxx.yyy.zzz`. Dengan menggunakan *[[subnet mask]]* yang diasosiasikan dengannya, sebuah alamat IP pun dapat dibagi menjadi dua bagian, yakni *Network Identifier* (NetID) yang dapat mengidentifikasikan jaringan lokal dalam sebuah *[[internetwork]]* dan *Host identifier* (HostID) yang dapat mengidentifikasikan host dalam jaringan tersebut. Sebagai contoh, alamat `205.116.008.044` dapat dibagi dengan menggunakan subnet mask `255.255.255.000` ke dalam *Network ID* `205.116.008.000` dan *Host ID* 44. Alamat IP merupakan kewajiban yang harus ditetapkan untuk sebuah *host*, yang dapat dilakukan secara manual (statis) atau menggunakan *[[Dynamic Host Configuration Protocol]]* (DHCP) (dinamis).
* Fully qualified domain name (FQDN): Alamat ini merupakan alamat yang direpresentasikan dalam nama alfanumerik yang diekspresikan dalam bentuk **<''nama_host''>.<''nama_domain''>**, di mana  mengindentifikasikan jaringan di mana sebuah komputer berada, dan  mengidentifikasikan sebuah komputer dalam jaringan. Pengalamatan FQDN digunakan oleh skema penamaan domain Domain Name System (DNS). Sebagai contoh, alamat FQDN `id.wikipedia.org` merepresentasikan sebuah host dengan nama "**id**" yang terdapat di dalam domain jaringan "`wikipedia.org`". Nama domain `wikipedia.org` merupakan *second-level domain* yang terdaftar di dalam *top-level domain* `.org`, yang terdaftar dalam root DNS, yang memiliki nama "**.**" (titik). Penggunaan FQDN lebih bersahabat dan lebih mudah diingat ketimbang dengan menggunakan alamat IP. Akan tetapi, dalam TCP/IP, agar komunikasi dapat berjalan, FQDN harus diterjemahkan terlebih dahulu (proses penerjemahan ini disebut sebagai **resolusi nama**) ke dalam alamat IP dengan menggunakan *server* yang menjalankan DNS, yang disebut dengan *Name Server* atau dengan menggunakan berkas *hosts* (`/etc/hosts` atau `%systemroot%\system32\drivers\etc\hosts`) yang disimpan di dalam mesin yang bersangkutan.

## Konsep dasar
### Layanan
Berikut ini merupakan layanan tradisional yang dapat berjalan di atas protokol TCP/IP:
* **Pengiriman [[berkas komputer|berkas]] (''file transfer'')**. File Transfer Protocol (FTP) memungkinkan pengguna komputer yang satu untuk dapat mengirim ataupun menerima berkas ke sebuah host di dalam jaringan. Metode otentikasi yang digunakannya adalah penggunaan nama pengguna (*user name*) dan *[[password*]], meskipun banyak juga FTP yang dapat diakses secara anonim (*anonymous*), alias tidak ber*password*. (Keterangan lebih lanjut mengenai FTP dapat dilihat pada RFC 959.)*
* ***Remote login''.** *Network terminal Protocol* (*telnet*) memungkinkan pengguna komputer dapat melakukan *[[log in]]* ke dalam suatu komputer di dalam suatu jaringan secara jarak jauh. Jadi hal ini berarti bahwa pengguna menggunakan komputernya sebagai perpanjangan tangan dari komputer jaringan tersebut. (Keterangan lebih lanjut mengenai Telnet dapat dilihat pada RFC 854 dan RFC 855.)
* ***Computer mail''.''' Digunakan untuk menerapkan sistem [[e-mail|surat elektronik]]. (Keterangan lebih lanjut mengenai e-mail dapat dilihat pada RFC 821 RFC 822.)
* ***Network File System* (NFS).*' Pelayanan akses berkas-berkas yang dapat diakses dari jarak jauh yang memungkinkan klien-klien untuk mengakses berkas pada komputer jaringan, seolah-olah berkas tersebut disimpan secara lokal. (Keterangan lebih lanjut mengenai NFS dapat dilihat RFC 1001 dan RFC 1002.)
* ***Remote execution''.''' Memungkinkan pengguna komputer untuk menjalankan suatu ''[[program komputer|program]]'' tertentu 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 system komputer yang sama dan ada pula yang  menggunakan sistem ''[[Remote Procedure Call]]'' (RPC), yang memungkinkan program untuk memanggil subrutin yang akan dijalankan di sistem komputer yang  berbeda. (sebagai contoh dalam [[Berkeley Software Distribution|Berkeley UNIX]] ada perintah <code>rsh</code> dan <code>rexec</code>.)
* ***Name server**' yang berguna sebagai penyimpanan basis data nama ''host'' yang digunakan pada Internet (Keterangan lebih lanjut dapat dilihat pada RFC 822 dan RFC 823 yang menjelaskan mengenai penggunaan protokol *name server* yang bertujuan untuk menentukan nama *host* di Internet.)

### Request for Comments
RFC (Request For Comments) adalah standar yang digunakan dalam Internet, meskipun ada juga isinya yang  merupakan bahan diskusi ataupun omong kosong belaka. Diterbitkan oleh IAB yang merupakan komite independen yang terdiri atas para peneliti dan profesional yang mengerti teknis, kondisi dan evolusi Internet. Sebuah surat yang  mengikuti nomor RFC menunjukan status RFC:
* S: Standard, standar resmi bagi internet
* DS: Draft standard, protokol tahap akhir sebelum disetujui sebagai standar
* PS: Proposed Standard, protokol pertimbangan untuk standar masa depan
* I: Informational, berisikan bahan-bahan diskusi yang sifatnya informasi
* E: Experimental, protokol dalam tahap percobaan tetapi bukan pada jalur standar.
* H: Historic, protokol-protokol yang telah digantikan atau tidak lagi dipertimbangkan untuk standardisasi.

### Bentuk arsitektur
Dikarenakan TCP/IP adalah serangkaian protokol di mana setiap protokol melakukan sebagian dari keseluruhan tugas komunikasi jaringan, maka tentulah implementasinya tak lepas dari arsitektur jaringan itu sendiri. Arsitektur rangkaian protokol TCP/IP mendifinisikan berbagai cara agar TCP/IP dapat saling menyesuaikan.

Karena TCP/IP merupakan salah satu lapisan protokol Model OSI, berarti bahwa hierarki TCP/IP merujuk kepada 7 lapisan OSI tersebut. Tiga lapisan teratas biasa dikenal sebagai "*upper level protocol*" sedangkan empat lapisan terbawah dikenal sebagai "*lower level protocol*". Tiap lapisan berdiri sendiri tetapi fungsi dari masing-masing lapisan bergantung dari keberhasilan operasi *layer* sebelumnya. Sebuah lapisan pengirim hanya perlu berhubungan dengan lapisan yang sama di penerima (jadi misalnya lapisan ''data link'' penerima hanya berhubungan dengan lapisan *data link* pengirim) selain dengan satu *layer* di atas atau di bawahnya (misalnya lapisan network berhubungan dengan lapisan transport di atasnya atau dengan lapisan data link di bawahnya).

Model dengan menggunakan lapisan ini merupakan sebuah konsep yang penting karena suatu fungsi yang rumit yang berkaitan dengan komunikasi dapat dipecahkan menjadi sejumlah unit yang lebih kecil. Tiap lapisan bertugas memberikan layanan tertentu pada lapisan di atasnya dan juga melindungi lapisan di atasnya dari rincian cara pemberian layanan tersebut. Tiap lapisan harus transparan sehingga modifikasi yang dilakukan atasnya tidak akan menyebabkan perubahan pada lapisan yang lain. Lapisan menjalankan perannya dalam pengalihan data dengan mengikuti peraturan yang berlaku untuknya dan hanya berkomunikasi dengan lapisan yang setingkat. Akibatnya sebuah layer pada satu sistem tertentu hanya akan berhubungan dengan lapisan yang sama dari sistem yang lain. Proses ini dikenal sebagai *Peer process*. Dalam keadaan sebenarnya tidak ada data yang langsung dialihkan antar lapisan yang sama dari dua sistem yang berbeda ini. Lapisan atas akan memberikan data dan kendali ke lapisan dibawahnya sampai lapisan yang terendah dicapai. Antara dua lapisan yang berdekatan terdapat *interface* (antarmuka). *Interface* ini mendifinisikan operasi dan layanan yang diberikan olehnya ke lapisan lebih atas. Tiap lapisan harus melaksanakan sekumpulan fungsi khusus yang dipahami dengan sempurna. Himpunan lapisan dan protokol dikenal sebagai "arsitektur jaringan".

## Referensi

## Blibiografi
* *Joko Irawan, Adisuryo Wardono*, *Meningkatkan Kemampuan Jaringan dengan PC Cloning System, 2006, ISBN 979-763-387-X*
* 
* 
* 
* 
* 
* 
* 
* 
* 
* 
* 
* 
* Sebuah protokol untuk Interkomunikasi Jaringan Paket, Cerf & Kahn, IEEE Trans on Comms, Vol Com-22, No 5 May 1974

## Pranala luar
* Internet History —Pages on Robert Kahn, Vinton Cerf, and TCP/IP (di ulas oleh Cerf dan Kahn).
* RFC 675 - Spesifikasi dari Internet Transmission Control Program, Versi Desember 1974
* TCP/IP State Transition Diagram  (PDF)
* RFC 1180 Sebuah tutorial TCP/IP - dari Internet Engineering Task Force (Januari 1991)
* TCP/IP FAQ
* The TCP/IP Guide - Sebuah pandangan komprehensif tentang protokol dan prosedur/proses yang terlibat
* A Study of the ARPANET TCP/IP Digest
* TCP/IP Sequence Diagrams
* The Internet in Practice 
* TCP/IP - Directory & Informational Resource
* Daryl's TCP/IP Primer - Intro untuk administrasi TCP/IP LAN , gaya percakapan
* TCP/IP commands from command prompt
* cIPS—Tumpukan TCP/IP yang kuat untuk perangkat yang tertanam tanpa sebuah sistem operasi

## Lihat pula
* Alamat IP
* Nama host