Sejarah TCP/IP dimulainya dari lahirnya ARPANET yaitu jaringan paket
switching digital yang didanai oleh DARPA (Defence Advanced Research
Projects Agency) pada tahun 1969. Sementara itu ARPANET terus bertambah
besar sehingga protokol yang digunakan pada waktu itu tidak mampu lagi
menampung jumlah node yang semakin banyak. Oleh karena itu DARPA
mendanai pembuatan protokol komunikasi yang lebih umum, yakni TCP/IP. Ia
diadopsi menjadi standard ARPANET pada tahun 1983.
Untuk
memudahkan proses konversi, DARPA juga mendanai suatu proyek yang
mengimplementasikan protokol ini ke dalam BSD UNIX, sehingga dimulailah
perkawinan antara UNIX dan TCP/IP.. Pada awalnya internet digunakan
untuk menunjukan jaringan yang menggunakan internet protocol (IP) tapi
dengan semakin berkembangnya jaringan, istilah ini sekarang sudah berupa
istilah generik yang digunakan untuk semua kelas jaringan. Internet
digunakan untuk menunjuk pada komunitas jaringan komputer worldwide yang
saling dihubungkan dengan protokol TCP/IP.
Perkembangan TCP/IP
yang diterima luas dan praktis menjadi standar de-facto jaringan
komputer berkaitan dengan ciri-ciri yang terdapat pada protokol itu
sendiri yang merupakan keunggulun dari TCP/IP, yaitu :
•
Perkembangan protokol TCP/IP menggunakan standar protokol terbuka
sehingga tersedia secara luas. Semua orang bisa mengembangkan perangkat
lunak untuk dapat berkomunikasi menggunakan protokol ini. Hal ini
membuat pemakaian TCP/IP meluas dengan sangat cepat, terutama dari sisi
pengadopsian oleh berbagai sistem operasi dan aplikasi jaringan.
•
Tidak tergantung pada perangkat keras atau sistem operasi jaringan
tertentu sehingga TCP/IP cocok untuk menyatukan bermacam macam network,
misalnya Ethernet, token ring, dial-up line, X-25 net dan lain lain.
•
Cara pengalamatan bersifat unik dalam skala global, memungkinkan
komputer dapat
mengidentifikasi secara unik komputer yang lain dalam
seluruh jaringan, walaupun jaringannya sebesar jaringan worldwide
Internet. Setiap komputer yang tersambung dengan jaringan TCP/IP
(Internet) akan memiliki address yang hanya dimiliki olehnya.
• TCP/IP memiliki fasilitas routing dan jenis-jenis layanan lainnya yang memungkinkan diterapkan pada internetwork.
Arsitektur dan Protokol Jaringan TCP/IP
Dalam
arsitektur jaringan komputer, terdapat suatu lapisan-lapisan ( layer )
yang memiliki tugas spesifik serta memiliki protokol tersendiri. ISO
(International Standard Organization) telah mengeluarkan suatu standard
untuk arsitektur jaringan komputer yang dikenal dengan nama Open System
Interconnection ( OSI ).
Perbandingan Arsitektur OSI dan TCP/IP
Walaupun
jumlahnya berbeda, namun semua fungsi dari lapisan-lapisan arsitektur
OSI telah tercakup oleh arsitektur TCP/IP. Adapun rincian fungsi
masing-masing layer arsitektur TCP/IP adalah sbb :
• Physical Layer (lapisan fisik)
Merupakan
lapisan terbawah yang mendefinisikan besaran fisik seperti media
komunikasi, tegangan, arus, dsb. Lapisan ini dapat bervariasi bergantung
pada media komunikasi pada jaringan yang bersangkutan. TCP/IP bersifat
fleksibel sehingga dapat mengintegralkan mengintegralkan berbagai
jaringan dengan media fisik yang berbeda-beda.
• Network Access Layer
fungsi
yang mirip dengan Data Link layer pada OSI. Lapisan ini mengatur
penyaluran data frame-frame data pada media fisik yang digunakan secara
handal. Lapisan ini biasanya memberikan servis untuk deteksi dan koreksi
kesalahan dari data yang ditransmisikan. Beberapa contoh protokol yang
digunakan pada lapisan ini adalah X.25 jaringan publik, Ethernet untuk
jaringan Etehernet, AX.25 untuk jaringan Paket Radio dsb.
• Internet Layer
mendefinisikan bagaimana hubungan dapat terjadi antara dua pihak yang
berada pada jaringan yang berbeda seperti Network Layer pada OSI. Pada
jaringan Internet yang terdiri atas puluhan juta host dan ratusan ribu
jaringan lokal, lapisan ini bertugas untuk menjamin agar suatu paket
yang dikirimkan dapat menemukan tujuannya dimana pun berada. Oleh karena
itu, lapisan ini memiliki peranan penting terutama dalam mewujudkan
internetworking yang meliputi wilayah luas (worldwide Internet).
Beberapa tugas penting pada lapisan ini adalah:
1. Addressing, yakni
melengkapi setiap datagram dengan alamat Internet dari tujuan. Alamat
pada protokol inilah yang dikenal dengan Internet Protocol Address ( IP
Address). Karena pengalamatan (addressing) pada jaringan TCP/IP berada
pada level ini (software), maka jaringan TCP/IP independen dari jenis
media dan komputer yang digunakan.
2. Routing, yakni menentukan ke
mana datagram akan dikirim agar mencapai tujuan yang diinginkan. Fungsi
ini merupakan fungsi terpenting dari Internet Protocol (IP). Sebagai
protokol yang bersifat connectionless, proses routing sepenuhnya
ditentukan oleh jaringan. Pengirim tidak memiliki kendali terhadap paket
yang dikirimkannya untuk bisa mencapai tujuan. Router-router pada
jaringan TCP/IP lah yang sangat menentukan dalam penyampaian datagram
dari penerima ke tujuan.
• Transport Layer
mendefinisikan
cara-cara untuk melakukan pengiriman data antara end to end host secara
handal. Lapisan ini menjamin bahwa informasi
yang diterima pada sisi
penerima adalah sama dengan informasi yang dikirimkan pada pengirim.
Untuk itu, lapisan ini memiliki beberapa fungsi penting antara lain :
1.
Flow Control. Pengiriman data yang telah dipecah menjadi paket-paket
tersebut harus diatur sedemikian rupa agar pengirim tidak sampai
mengirimkan data dengan kecepatan yang melebihi kemampuan penerima dalam
menerima data.
2. Error Detection. Pengirim dan penerima juga
melengkapi data dengan sejumlah informasi yang bisa digunakan untuk
memeriksa data yang dikirimkan bebas dari kesalahan. Jika ditemukan
kesalahan pada paket data yang diterima, maka penerima tidak akan
menerima data tersebut. Pengirim akan mengirim ulang paket data yang
mengandung kesalahan tadi. Namun hal ini dapat menimbulkan delay yang
cukup berartii.
Pada TCP/IP, protokol yang dipergunakan adalah
Transmission Control Protocol (TCP) atau User Datagram Protocol ( UDP ).
TCP dipakai untuk aplikasi-aplikasi yang membutuhkan keandalan data,
sedangkan UDP digunakan untuk aplikasi yang membutuhkan panjang paket
yang pendek dan tidak menuntut keandalan yang tinggi. TCP memiliki
fungsi flow control dan error detection dan bersifat connection
oriented. Sebaliknya pada UDP yang bersifat connectionless tidak ada
mekanisme pemeriksaan data dan flow control, sehingga UDP disebut juga
unreliable protocol. Untuk beberapa hal yang menyangkut efisiensi dan
penyederhanaan, beberapa aplikasi memilih menggunakan UDP sebagai
protokol transport. Contohnya adalah aplikasi database yang hanya
bersifat query dan response, atau aplikasi lain yang sangat sensitif
terhadap delay seperti video conference. Aplikasi seperti ini dapat
mentolerir sedikit kesalahan (gambar atau suara masih bisa dimengerti),
namun akan tidak nyaman untuk dilihat jika terdapat delay yang cukup
berarti.
• Application Layer
merupakan lapisan terakhir dalam
arsitektur TCP/IP yang berfungsi mendefinisikan aplikasi-aplikasi yang
dijalankan pada jaringan. Karena itu, terdapat banyak protokol pada
lapisan ini, sesuai dengan banyaknya aplikasi TCP/IP yang dapat
dijalankan. Contohnya adalah SMTP ( Simple Mail Transfer Protocol )
untuk pengiriman e-mail, FTP (File Transfer
Protocol) untuk transfer
file, HTTP (Hyper Text Transfer Protocol) untuk aplikasi web, NNTP
(Network News Transfer Protocol) untuk distribusi news group dan
lain-lain. Setiap aplikasi pada umumnya menggunakan protokol TCP dan IP,
sehingga keseluruhan keluarga protokol ini dinamai dengan TCP/IP.
Pengiriman dan Penerimaan Paket Data
Layer-layer
dan protokol yang terdapat dalam arsitektur jaringan TCP/IP
menggambarkan fungsi-fungsi dalam komunikasi antara dua buah komputer.
Setiap lapisan menerima data dari lapisan di atas atau dibawahnya,
kemudian memproses data tersebut sesuai fungsi protokol yang dimilikinya
dan meneruskannya ke lapisan berikutnya. Ketika dua komputer
berkomunikasi, terjadi aliran data antara pengirim dan penerima melalui
lapisan-lapisan di atas. Pada pengirim, aliran data adalah dari atas ke
bawah. Data dari user maupun suatu aplikasi dikirimkan ke Lapisan
Transport dalam bentuk paket-paket dengan panjang tertentu. Protokol
menambahkan sejumlah bit pada setiap paket sebagai header yang berisi
informasi mengenai urutan segmentasi untuk menjaga integritas data dan
bit-bit pariti untuk deteksi dan koreksi kesalahan.
Dari Lapisan
Transport, data yang telah diberi header tersebut diteruskan ke Lapisan
Network / Internet. Pada lapisan ini terjadi penambahan header oleh
protokol yang berisi informasi alamat tujuan, alamat pengirim dan
informasi lain yang dibutuhkan untuk melakukan routing. Kemudian terjadi
pengarahan routing data, yakni ke network dan interface yang mana data
akan dikirimkan, jika terdapat lebih dari satu interface pada host. Pada
lapisan ini juga dapat terjadi segmentasi data, karena panjang paket
yang akan dikirimkan harus disesuaikan dengan kondisi media komunikasi
pada network yang akan dilalui.
Terakhir data akan sampai pada
Physical Layer yang akan mengirimkan data dalam bentuk besaran-besaran
listrik/fisik seperti tegangan, arus, gelombang radio maupun cahaya,
sesuai media yang digunakan.
Di bagian penerima, proses pengolahan
data mirip seperti di atas hanya dalam urutan yang berlawanan (dari
bawqah ke atas). Sinyal yang diterima pada physical layer akan diubah
dalam ke dalam data. Protokol akan memeriksa integritasnya dan jika
tidak ditemukan error t header yang ditambahkan akan dilepas.
Selanjutnya
data diteruskan ke lapisan network. Pada lapisan ini, address tujuan
dari paket data yang diterima akan diperiksa. Jika address tujuan
merupakan address host yang bersangkutan, maka header lapisan network
akan dicopot dan data akan diteruskan ke lapisan yang diatasnya. Namun
jika tidak, data akan di forward ke network tujuannya, sesuai dengan
informasi routing yang dimiliki.
Pada lapisan Transport, kebenaran
data akan diperiksa kembali, menggunakan informasi header yang
dikirimkan oleh pengirim. Jika tidak ada
kesalahan, paket-paket data
yang diterima akan disusun kembali sesuai urutannya pada saat akan
dikirim dan diteruskan ke lapisan aplikasi pada penerima.
Proses yang
dilakukan tiap lapisan tersebut dikenal dengan istilah enkapsulasi
data. Enkapsulasi ini sifatnya transparan. Maksudnya, suatu lapisan
tidak perlu mengetahui ada berapa lapisan yang ada di atasnya maupun di
bawahnya. Masing-masing hanya mengerjakan tugasnya. Pada pengirim, tugas
ini adalah menerima data dari lapisan diatasnya, mengolah data tersebut
sesuai dengan fungsi protokol, menambahkan header protokol dan
meneruskan ke lapisan di bawahnya.
Pada penerima, tugas ini adalah
menerima data dari lapisan di bawahnya, mengolah data sesuai fungsi
protokol, mencopot header protokol tersebut dan meneruskan ke lapisan di
atasnya.
Internet Protocol
Internet Protocol (IP) berfungsi
menyampaikan paket data ke alamat yang tepat. Oleh karena itu Internet
Protokol memegang peranan yang sangat penting dari jaringan TCP/IP.
Karena semua aplikasi jaringan TCP/IP pasti bertumpu kepada Internet
Protocol agar dapat berjalan dengan baik.
IP merupakan protokol pada network layer yang bersifat :
1.
Connectionless, yakni setiap paket data yang dikirim pada suatu saat
akan melalui rute secara independen. Paket IP (datagram) akan melalui
rute yang ditentukan oleh setiap router yang dilalui oleh datagram
tersebut. Hal ini memungkinkan keseluruhan datagram tiba di tempat
tujuan dalam urutan yang berbeda karena menempuh rute yang berbeda pula.
2.
Unreliable atau ketidakandalan yakni Protokol IP tidak menjamin
datagram yang dikirim pasti sampai ke tempat tujuan. Ia hanya akan
melakukan best effort delivery yakni melakukan usaha sebaik-baiknya agar
paket yang dikirim tersebut sampai ke tujuan.
Suatu datagram bisa saja tidak sampai dengan selamat ke tujuan karena beberapa hal berikut:
• Adanya bit error pada saat pentransmisian datagram pada suatu medium
• Router yang dilewati mendiscard datagram karena terjadinya kongesti dan kekurangan ruang memori buffer
• Putusnya rute ke tujuan untuk sementara waktu akibat adanya router yang down
Terjadinya kekacauan routing, sehingga datagram mengalami looping
IP
juga didesain untuk dapat melewati berbagai media komunikasi yang
memiliki karakteristik dan kecepatan yang berbeda-beda. Pada jaringan
Ethernet, panjang satu datagram akan lebih besar dari panjang datagram
pada jaringan publik yang menggunakan media jaringan telepon, atau pada
jaringan wireless. Perbedaan ini semata-mata untuk mencapai throughput
yang baik pada setiap media. Pada umumnya, semakin cepat kemampuan
transfer data pada media tersebut, semakin besar panjang datagram
maksimum yang digunakan. Akibat dari perbedaan ini, datagram IP dapat
mengalami fragmentasi ketika berpindah dari media kecepatan tinggi ke
kecepatan rendah (misalnya dari LAN Ethernet 10 Mbps ke leased line
menggunakan Point-to-Point Protocol dengan kecepatan 64 kbps). Pada
router/host penerima, datagram yang ter-fragmen ini harus disatukan
kembali sebelum diteruskan ke router berikutnya, atau ke lapisan
transport pada host tujuan. Hal ini menambah waktu pemrosesan pada
router dan menyebabkan delay.
Seluruh sifat yang diuraikan pada di
atas adalah akibat adanya sisi efisiensi protokol yang dikorbankan
sebagai konsekuensi dari keunggulan protokol IP. Keunggulan ini berupa
kemampuan menggabungkan berbagai media komunikasi dengan karakteristik
yang berbeda-beda, fleksibel dengan perkembangan jaringan, dapat merubah
routing secara otomatis jika suatu rute mengalami kegagalan, dsb.
Misalnya, untuk dapat merubah routing secara dinamis, dipilih mekanisme
routing yang ditentukan oleh kondisi jaringan dan elemen-elemen jaringan
(router). Selain itu, proses routing juga harus dilakukan untuk setiap
datagram, tidak hanya pada permulaan hubungan. Marilah kita perhatikan
struktur header dari protokol IP beserta fungsinya masing-masing.
Setiap
protokol memiliki bit-bit ekstra diluar informasi/data yang dibawanya.
Selain informasi, bit-bit ini juga berfungsi sebagai alat kontrol. Dari
sisi efisiensi, semakin besar jumlah bit ekstra ini, maka semakin kecil
efisiensi komunikasi yang berjalan. Sebaliknya semakin kecil jumlah bit
ekstra ini, semakin tinggi efisiensi komunikasi yang berjalan. Disinilah
dilakukan trade-off antara keandalan datagram dan efisiensi. Sebagai
contoh, agar datagram IP dapat menemukan tujuannya, diperlukan informasi
tambahan yang harus dicantumkan pada header ini.
sumber : http://hermanwilliam.blogspot.com