Komunikasi Data Pada Model TCP IP

  • IntialBoard
  • Jan 30, 2023
Komunikasi Data Pada Model TCP IP

Sekarang kita sudah memahami tentang semua layer dan protokol yang terdapat pada model TCP/IP. Sebagian dari Anda mungkin masih menerka-nerka seperti apa cara kerja model TCP/IP ini. Apalagi sudah disebutkan sejak awal modul bahwa model TCP/IP lebih praktis ketimbang model OSI yang teoretis. Masih ingat, bukan?

Jadi, sekarang kita akan melihat bagaimana komunikasi data yang terjadi pada model TCP/IP supaya Anda makin paham lagi tentang model ini. Siapkan ancang-ancang, mari kita langsung mulai.

Katakanlah kita ingin membuka website www.initialboard.com melalui web browser yang sudah terhubung ke jaringan (dalam hal ini adalah internet). Itu berarti, web browser berada di sisi client, sementara web server milik Dicoding ada di sisi server. Ini dinamakan komunikasi client-server. Oke, lantas apa yang akan terjadi selanjutnya?

ilustrasi data pada client dan server

 

Application Layer

Layer pertama yang akan berinteraksi dengan browser adalah application layer. Layer ini mendefinisikan komunikasi antara aplikasi yang ada di komputer pengirim (client) dan aplikasi di komputer penerima (server). Jangan keliru, layer ini tidak menentukan cara kerja aplikasi, melainkan menjelaskan tentang bagaimana aplikasi menggunakan jaringan.

Protokol yang akan digunakan pada layer ini (pada kasus ini) adalah HTTP. Ia adalah protokol yang digunakan untuk berkomunikasi jika browser (client) ingin mendapatkan halaman web dari server.

Application layer akan bertanggung jawab untuk hal-hal semacam mendapatkan data dari aplikasi dan menyiapkannya dalam format yang akan ditransfer melalui jaringan. Berlaku juga ketika data diterima, layer ini akan mempersiapkan data dalam format yang digunakan oleh aplikasi nantinya.

Nah, untuk mulai berkomunikasi dengan server, application layer di sisi client akan mengirimkan HTTP request (permintaan HTTP). Data yang dimuat di dalamnya acapkali disebut sebagai message atau dalam bahasa Indonesia artinya pesan.

ilustrasi http request dari client ke server

GET adalah metode untuk meminta data dari server. Setelah itu, application layer akan meneruskan permintaan ke layer selanjutnya, yakni transport layer.

 

Transport Layer

Transport layer memiliki tanggung jawab untuk memecah data (message) yang diterima menjadi potongan yang lebih kecil yang disebut segment (jika menggunakan TCP) atau datagram (jika menggunakan UDP). Transport layer akan membuat dan mempertahankan komunikasi antara proses aplikasi pada komputer client maupun server. Di sinilah protokol TCP dan UDP berperan. Sederhananya, mereka menggunakan nomor port untuk melacak sesi komunikasi yang terbentuk (session).

Setiap aplikasi atau layanan yang ada di komputer, mereka memiliki nomor port tertentu. Misalnya, kita memiliki 20 aplikasi yang menggunakan jaringan, masing-masing aplikasi akan memiliki nomor port yang berbeda-beda. Port ini digunakan untuk merutekan data ke aplikasi yang membutuhkan data tersebut.

Port dapat memudahkan komputer untuk membedakan antara berbagai jenis lalu lintas jaringan. Email masuk ke port yang berbeda dari halaman web, meskipun keduanya mencapai komputer melalui koneksi Internet yang sama. Ini dilakukan dengan bantuan multiplexer (sirkuit yang menerima banyak input, tetapi hanya menghasilkan satu output) dan demultiplexer (sirkuit yang menerima hanya satu input, tetapi dapat menyajikan banyak output).

ilustrasi well known port number yang sering digunakan di internet

 

Gambar di atas juga menunjukkan beberapa nomor port yang terkenal (well-known port number) yang sering digunakan di internet. Masih banyak nomor port lainnya, bahkan terdapat 65.535 nomor port yang bisa kita pakai, meskipun tidak semuanya digunakan secara umum.

Jika Anda melihat gambar di atas dan berpikir apa hubungan antara IP address dengan port, kita akan coba pahami dengan sebuah analogi. Anggaplah IP address sebagai alamat dari sebuah apartemen, sementara port adalah nomor kamar di dalam apartemen tersebut.

ilustrasi IP address sebagai alamat dari sebuah apartemen

Simak ceritanya. Pada suatu senja yang temaram, Anda ingin menyinggahi kawan lama di apartemen miliknya. Anda pun melangkah sembari menggenggam secarik kertas bertuliskan alamat: Jalan Kenangan No.5 (kamar 143).

Setibanya di lobi apartemen, Anda bertanya kepada penjaga, “Pak, di manakah kamar 143?” Sang penjaga menunjuk kamar di sudut lorong. Anda pun segera menghampiri kamar tersebut dan mengetuk pintu beberapa kali. Tak selang lama, terbuka pintu itu dan keluarlah seorang kawan lama dengan raut wajah menyebalkannya yang tak pernah berubah sejak terakhir bersua di reuni SD. Saat itu juga, Anda mendekapnya, sesenggukan, seraya memberikan buah tangan yang tadi dibeli di pasar ikan. Ia malah terkekeh. Namun, akhirnya mempersilakan Anda masuk.

Huh! Seperti itulah kisahnya. Memilukan, ya? Anda paham kan dengan inti ceritanya? Semua itu persis seperti saat kita mengakses 10.1.1.100:80 untuk berkomunikasi dengan web service, di mana kita menuju ke alamat (IP address) 10.1.1.100. Kemudian, setelah tiba di komputer tersebut, kita akan menuju pintu (port) 80 untuk mengakses layanan web. Demikian juga ketika kita mengakses 10.1.1.100:25 untuk berkomunikasi dengan mail service, dst.

Oke, sepertinya kita sudah terlampau jauh dari skenario pengaksesan web Dicoding. Tak apa, mari kita kembali ke skenario tersebut. Katakanlah web server initialboard memiliki proses yang berjalan pada port 80. Ketika client menyiapkan HTTP request, ia akan menambahkan TCP header. TCP header berisi banyak hal, sekian di antaranya adalah source port (port sumber) dan destination port (port tujuan). Anggap saja source port dalam skenario kita adalah port 7268, sedangkan source destination-nya adalah port 80.

ilustrasi proses pada transport layer usai dilanjutkan data diteruskan ke layer berikutnya yakni network layer

Setelah proses pada transport layer usai, data diteruskan ke layer berikutnya, yakni network layer.

 

Network Layer

Di network layer, data (segment) akan dipecah menjadi potongan yang lebih kecil yang disebut packet. Packet yang dihasilkan bisa jadi satu atau mungkin banyak, tergantung pada berapa banyak data yang ada.

Tugas dari layer ini adalah memastikan data dari satu komputer (client) dapat menemukan jalan ke komputer tujuan (server). Untuk melakukan itu, sebuah IP header yang berisi source IP (IP sumber) dan destination IP (IP tujuan) ditambahkan ke setiap packet.

ilustrasi network layer

Jalur dari client ke server mungkin saja melintasi banyak jaringan. Oleh karenanya, packet membutuhkan peran dari perangkat jaringan router untuk berpindah dari satu jaringan ke jaringan yang lain. Inilah yang dinamakan routing (perutean).

Setelah proses pada layer ini selesai, data (packet) akan diteruskan ke layer selanjutnya, yakni data link layer.

 

Data Link Layer

Data link layer bertanggung jawab untuk pengiriman lalu lintas pada satu segmen jaringan atau LAN, dalam istilah TCP/IP berarti pengiriman dalam satu subnet (materi subnet akan kita pelajari di modul yang akan datang). Data (packet) dari layer sebelumnya akan dipecah menjadi bagian yang lebih kecil yang disebut frame.

Kemudian, frame tersebut akan ditambahkan sebuah header yang berisi source MAC address (MAC address sumber) dan destination MAC address (MAC address tujuan).

ilustrasi data link layer

Lantas, bagaimana cara kerjanya? Begini. Apabila kedua komputer berada dalam subnet yang sama, pengiriman datanya akan sederhana yaitu satu komputer langsung mengirimkan data ke komputer lain.

Namun, jika kedua komputer berada di subnet yang berbeda, kita membutuhkan perangkat router. Itu artinya, destination MAC address-nya akan menjadi MAC address dari perangkat router (perantara jaringan) itu.

Selanjutnya, ketika frame mencapai router, router akan melihat destination IP di IP header, kemudian router akan mengatur sendiri MAC address sebagai sumber dan perangkat berikutnya sebagai tujuan. Bila terdapat beberapa router di jalur, MAC address yang ada di frame akan ditulis ulang beberapa kali di sepanjang jalan.

Begitulah cara kerjanya. Nah, setelah prosesnya selesai, data (frame) akan diteruskan ke layer selanjutnya, yaitu physical layer.

 

Physical Layer

Sesuai namanya, physical layer bertanggung jawab untuk mengirim dan menerima data secara fisik. Ada banyak caranya, bisa melalui gelombang radio (Wi-Fi), sinyal cahaya (Fiber optic), dan lain-lain.

Data (frame) yang tadi dikirim dari data link layer kemudian di-encode (dikodekan) ke dalam bit (1 dan 0), lalu ditransmisikan melalui media fisik.

Bagaimana? Yakin deh, pastinya Anda sudah paham betul dengan materi ini. Jika belum, jangan sungkan untuk kembali membacanya, ya. Jangan lupa siapkan kopi atau snack untuk mencairkan kepenatan.

Apabila Anda sukar membayangkan bagaimana bentuk dari message, segment/datagram, packet, dan frame yang disebutkan pada materi di atas, simak baik-baik gambar di bawah ini untuk memahaminya.

ilustrasi bagaimana data dikirim dari komputer pengirim ke komputer penerima
ilustrasi bagaimana data dikirim dari komputer pengirim ke komputer penerima

Oke, sekarang Anda sudah memahami bagaimana data dikirim dari komputer pengirim ke komputer penerima. Eh, tunggu dulu! Lantas, bagaimana komputer penerima menangani data yang tadi dikirim? Pertanyaan bagus, yuk kita bahas secuil.

Ketika data tiba di komputer penerima, data tersebut akan melalui proses pada model TCP/IP dalam urutan terbalik. Setiap protokol pada komputer penerima akan menghapus informasi header yang terlampir di packet.

Inilah proses yang akan terjadi:

  • Physical layer menerima data dalam bentuk bit, lalu menerjemahkannya, dan meneruskannya ke data link layer.
  • Data link layer memverifikasi dan kemudian menghapus informasi pada header frame. Usai itu, data link layer mengirimkan frame ke network layer.
  • Network layer membaca informasi di header untuk mengidentifikasi transmisi. Jika transmisi terfragmentasi, network layer akan menyusun kembali ke dalam packet. Setelahnya, network layer menghapus IP header dan meneruskannya ke transport layer.
  • Transport layer lalu membaca header untuk menentukan protokol pada application layer mana yang harus menerima data. Lanjut, transport layer akan menghapus header yang terkait dan mengirim pesan atau melakukan streaming ke aplikasi penerima.
  • Pada akhirnya, application layer menerima pesan dan melakukan operasi yang diminta oleh komputer pengirim.

Lanjutkan Ke :  SysAdmin Harus Tau Apa Itu Proxmox

Related Post :

Leave a Reply

Your email address will not be published. Required fields are marked *