GNU/Linux >> Belajar Linux >  >> Linux

Dasar-dasar Protokol TCP/IP Dijelaskan dengan Diagram

Pernahkah Anda bertanya-tanya bagaimana komputer Anda berbicara dengan komputer lain di LAN lokal Anda atau ke sistem lain di internet?

Memahami seluk-beluk bagaimana komputer berinteraksi adalah bagian penting dari jaringan dan sama-sama menarik bagi sysadmin serta pengembang. Dalam artikel ini, kita akan mencoba membahas konsep komunikasi dari tingkat dasar yang sangat mendasar yang perlu dipahami oleh semua orang.

SUITE PROTOKOL TCP/IP

Komunikasi antar komputer di jaringan dilakukan melalui setelan protokol. Paket protokol yang paling banyak digunakan dan paling banyak tersedia adalah paket protokol TCP/IP. Setelan protokol terdiri dari arsitektur berlapis di mana setiap lapisan menggambarkan beberapa fungsi yang dapat dilakukan oleh protokol. Setiap lapisan biasanya memiliki lebih dari satu opsi protokol untuk melaksanakan tanggung jawab yang dipatuhi oleh lapisan tersebut. TCP/IP biasanya dianggap sebagai sistem 4 lapisan. 4 lapisan tersebut adalah sebagai berikut :

  1. Lapisan aplikasi
  2. Lapisan transportasi
  3. Lapisan jaringan
  4. Lapisan tautan data

1. Lapisan aplikasi

Ini adalah lapisan teratas dari paket protokol TCP/IP. Lapisan ini mencakup aplikasi atau proses yang menggunakan protokol lapisan transport untuk mengirimkan data ke komputer tujuan.

Pada setiap lapisan ada pilihan protokol tertentu untuk melaksanakan tugas yang ditunjuk untuk lapisan tertentu. Jadi, lapisan aplikasi juga memiliki berbagai protokol yang digunakan aplikasi untuk berkomunikasi dengan lapisan kedua, lapisan transport. Beberapa protokol lapisan aplikasi yang populer adalah :

  • HTTP (Protokol transfer hiperteks)
  • FTP (Protokol transfer file)
  • SMTP (Protokol transfer surat sederhana)
  • SNMP (Protokol manajemen jaringan sederhana) dll

2. Lapisan Transportasi

Lapisan ini menyediakan tulang punggung untuk aliran data antara dua host. Lapisan ini menerima data dari lapisan aplikasi di atasnya. Ada banyak protokol yang bekerja pada lapisan ini tetapi dua protokol yang paling umum digunakan pada lapisan transport adalah TCP dan UDP.

TCP digunakan jika koneksi yang andal diperlukan sementara UDP digunakan jika koneksi tidak dapat diandalkan.

TCP membagi data (berasal dari lapisan aplikasi) menjadi potongan berukuran tepat dan kemudian melewati potongan ini ke jaringan. Ini mengakui paket yang diterima, menunggu pengakuan dari paket yang dikirim dan menetapkan batas waktu untuk mengirim ulang paket jika pengakuan tidak diterima tepat waktu. Istilah 'koneksi yang andal' digunakan di mana tidak diinginkan untuk kehilangan informasi apa pun yang sedang ditransfer melalui jaringan melalui koneksi ini. Jadi, protokol yang digunakan untuk jenis koneksi ini harus menyediakan mekanisme untuk mencapai karakteristik yang diinginkan ini. Misalnya, saat mengunduh file, tidak diinginkan untuk kehilangan informasi apa pun (byte) karena dapat menyebabkan kerusakan pada konten yang diunduh.

UDP menyediakan layanan yang relatif lebih sederhana tetapi tidak dapat diandalkan dengan mengirimkan paket dari satu host ke host lain. UDP tidak mengambil tindakan ekstra untuk memastikan bahwa data yang dikirim diterima oleh host target atau tidak. Istilah 'koneksi yang tidak dapat diandalkan' digunakan di mana hilangnya beberapa informasi tidak menghambat tugas yang dipenuhi melalui koneksi ini. Misalnya saat streaming video, hilangnya beberapa byte informasi karena alasan tertentu dapat diterima karena hal ini tidak terlalu merugikan pengalaman pengguna.

3. Lapisan Jaringan

Lapisan ini juga dikenal sebagai lapisan Internet. Tujuan utama dari lapisan ini adalah untuk mengatur atau menangani pergerakan data pada jaringan. Dengan pergerakan data, yang kami maksud adalah perutean data melalui jaringan. Protokol utama yang digunakan pada layer ini adalah IP. Sementara ICMP (digunakan oleh perintah 'ping' populer) dan IGMP juga digunakan pada lapisan ini.

4. Lapisan Tautan Data

Lapisan ini juga dikenal sebagai lapisan antarmuka jaringan. Lapisan ini biasanya terdiri dari driver perangkat di OS dan kartu antarmuka jaringan yang terpasang ke sistem. Driver perangkat dan kartu antarmuka jaringan menangani detail komunikasi dengan media yang digunakan untuk mentransfer data melalui jaringan. Dalam kebanyakan kasus, media ini dalam bentuk kabel. Beberapa protokol terkenal yang digunakan pada lapisan ini antara lain ARP(Address resolution protocol), PPP(Point to point protocol), dll.

CONTOH KONSEP TCP/IP

Satu hal yang perlu diperhatikan adalah bahwa interaksi antara dua komputer melalui jaringan melalui rangkaian protokol TCP/IP terjadi dalam bentuk arsitektur server klien.

Klien meminta layanan sementara server memproses permintaan untuk klien.

Sekarang, karena kita telah membahas lapisan yang mendasari yang membantu aliran data dari host ke target melalui jaringan. Mari kita ambil contoh yang sangat sederhana untuk membuat konsepnya lebih jelas.

Pertimbangkan aliran data saat Anda membuka situs web.

Seperti yang terlihat pada gambar di atas, informasi mengalir ke bawah melalui setiap lapisan pada mesin host. Pada lapisan pertama, karena protokol http sedang digunakan, maka permintaan HTTP dibentuk dan dikirim ke lapisan transport.

Di sini protokol TCP memberikan beberapa informasi lebih lanjut (seperti nomor urut, nomor port sumber, nomor port tujuan, dll.) ke data yang berasal dari lapisan atas sehingga komunikasi tetap andal, yaitu, jalur data yang dikirim dan data yang diterima dapat dipertahankan.

Pada lapisan bawah berikutnya, IP menambahkan informasinya sendiri atas data yang berasal dari lapisan transport. Informasi ini akan membantu dalam perjalanan paket melalui jaringan. Terakhir, lapisan data link memastikan bahwa transfer data ke/dari media fisik dilakukan dengan benar. Di sini sekali lagi komunikasi yang dilakukan pada lapisan tautan data dapat diandalkan atau tidak dapat diandalkan.

Informasi ini berjalan di media fisik (seperti Ethernet) dan mencapai mesin target.

Sekarang, di mesin target (yang dalam kasus kami adalah mesin tempat situs web dihosting) rangkaian interaksi yang sama terjadi, tetapi dalam urutan terbalik.

Paket pertama kali diterima pada lapisan data link. Pada lapisan ini informasi (yang diisi oleh protokol lapisan tautan data dari mesin host) dibaca dan data lainnya diteruskan ke lapisan atas.

Demikian pula pada lapisan Jaringan, informasi yang ditetapkan oleh protokol lapisan Jaringan dari mesin host dibaca dan informasi lainnya diteruskan pada lapisan atas berikutnya. Hal yang sama terjadi pada lapisan transport dan akhirnya permintaan HTTP yang dikirim oleh aplikasi host (browser Anda) diterima oleh aplikasi target (server situs web).

Orang akan bertanya-tanya apa yang terjadi ketika informasi khusus untuk setiap lapisan dibaca oleh protokol yang sesuai pada mesin target atau mengapa diperlukan? Nah, mari kita pahami ini dengan contoh protokol TCP yang ada di lapisan transport. Pada mesin host, protokol ini menambahkan informasi seperti nomor urut ke setiap paket yang dikirim oleh lapisan ini.

Pada mesin target, ketika paket mencapai lapisan ini, TCP pada lapisan ini mencatat nomor urut paket dan mengirimkan pengakuan (yang diterima nomor seq + 1).

Sekarang, jika host TCP tidak menerima acknowledgment dalam beberapa waktu tertentu, ia akan mengirimkan kembali paket yang sama. Jadi dengan cara ini TCP memastikan bahwa tidak ada paket yang hilang. Jadi kita melihat bahwa protokol di setiap lapisan membaca informasi yang ditetapkan oleh mitranya untuk mencapai fungsionalitas lapisan yang diwakilinya.

PORT, SERVER DAN STANDAR

Pada mesin tertentu, nomor port yang digabungkan dengan alamat IP mesin dikenal sebagai soket. Kombinasi IP dan port pada klien dan server dikenal sebagai empat tupel. Empat tupel ini secara unik mengidentifikasi koneksi. Di bagian ini kita akan membahas bagaimana nomor port dipilih.

Anda sudah tahu bahwa beberapa layanan yang sangat umum seperti FTP, telnet dll berjalan pada nomor port yang terkenal. Sementara server FTP berjalan pada port 21, server Telent berjalan pada port 23. Jadi, kita melihat bahwa beberapa layanan standar yang disediakan oleh implementasi TCP/IP memiliki beberapa port standar yang mereka jalankan. Nomor port standar ini umumnya dipilih dari 1 hingga 1023. Port yang terkenal dikelola oleh Internet Assigned Numbers Authority (IANA).

Sementara sebagian besar server standar (yang disediakan oleh implementasi TCP/IP suite) berjalan pada nomor port standar, klien tidak memerlukan port standar apa pun untuk dijalankan.

Nomor port klien dikenal sebagai port ephemeral. Yang kami maksud dengan fana adalah berumur pendek. Ini karena klien dapat terhubung ke server, melakukan tugasnya, dan kemudian memutuskan sambungan. Jadi kami menggunakan istilah 'berumur pendek' dan karenanya tidak ada port standar yang diperlukan untuk mereka.

Selain itu, karena klien perlu mengetahui nomor port server untuk terhubung ke mereka, maka sebagian besar server standar berjalan pada nomor port standar.

Port yang dicadangkan untuk klien umumnya berkisar antara 1024 hingga 5000. Nomor port yang lebih tinggi dari 5000 disediakan untuk server yang tidak standar atau terkenal.

Jika kita melihat file ‘/etc/services’, Anda akan menemukan sebagian besar server standar dan port tempat server tersebut dijalankan.

$ cat /etc/services
systat		11/tcp		users
daytime		13/udp
netstat		15/tcp
qotd		17/tcp		quote
msp		18/udp
chargen		19/udp		ttytst source
ftp-data	20/tcp
ftp		21/tcp
ssh		22/tcp
ssh		22/udp
telnet		23/tcp
...
...
...

Seperti yang Anda lihat dari file /etc/services, FTP memiliki nomor port 21, telent memiliki nomor port 23 dll. Anda dapat menggunakan perintah 'grep' pada file ini untuk menemukan server dan port yang terkait.

Sejauh menyangkut standar, empat organisasi/grup berikut mengelola rangkaian protokol TCP/IP. Baik IRTF maupun IETF berada di bawah IAB.

  1. Masyarakat Internet (ISOC)
  2. Dewan Arsitektur Internet (IAB). IAB berada di bawah ISOC.
  3. Satuan Tugas Teknik Internet (IETF)
  4. Satuan Tugas Riset Internet (IRTF)

Linux
  1. Perintah nslookup Linux Dijelaskan Dengan Contoh

  2. Perintah Traceroute Linux, Dijelaskan dengan Contoh

  3. Pengalihan IP/Port dengan csf

  1. Perintah shutdown Linux Dijelaskan dengan Contoh

  2. Pengantar firewall

  3. Serangan TCP/IP – Penjelasan Dasar-dasar Keracunan Cache ARP

  1. Perintah Linux curl Dijelaskan dengan Contoh

  2. Perintah potong Linux Dijelaskan dengan 6 Contoh

  3. Penjelasan 15 Port Jaringan yang Umum Digunakan