Ada beberapa kesalahpahaman potensial atau kesalahpahaman dalam pertanyaan yang akan dibahas dalam posting ini.
Dalam Diagram 2, ini menunjukkan representasi dari "tumpukan" perangkat lunak yang digunakan komputer (PC) untuk membuat, memproses, dan mengirim pesan, di internet, ke komputer lain
Apakah semua jenis komputer - smartphone / tv / gameconsoles, dll menggunakan format ini ?
(Dalam hal ini) apakah ada perbedaan antara internet seluler dan Wifi / Ethernet?
Bagaimana dengan perangkat fungsi tunggal yang tampaknya tidak memiliki lapisan "Aplikasi" - mis. Kamera yang terhubung ke web, pengalih cahaya, atau termostat.
Kehadiran kesalahpahaman ini mengharuskan dimasukkannya penjelasan berikut ini (untuk memberikan konteks untuk diskusi berikutnya):
- Apa itu Internet?
- Apakah paket protokol TCP / IP itu
- Apa itu aplikasi
Maka pertanyaan akan ditanggapi langsung.
Perhatikan bahwa mengingat pentingnya dan kompleksitasnya, seluruh seri buku telah ditulis pada paket protokol TCP / IP. Definisi dan penjelasan di sini akan diambil terutama dari Wikipedia, TCP / IP Illustrated Volume 1 Edisi kedua: Protokol oleh Stevens dan Fall, dan Tutorial TCP / IP IBM dan Tinjauan Teknis .
1. Internet
Internet secara teknis adalah Wide Area Network (WAN) , tetapi cara yang lebih bermanfaat untuk menganggapnya adalah sebagai semacam supernetwork (jaringan jaringan) atau agregat dari banyak berbagai jaringan internet yang saling terhubung . Berikut adalah gambar jalur perutean melalui sebagian Internet:
- Internet terdiri dari banyak jaringan yang terhubung
- Jaringan dapat terdiri dari 1 sistem atau lebih ( host )
- Sistem yang terhubung biasanya berjalan pada beberapa jenis platform perangkat keras
- ada perbedaan yang signifikan dalam jenis sistem yang terhubung ke jaringan dan perangkat keras yang mereka jalankan
Bacaan yang menyenangkan tentang cara kerja Internet dapat ditemukan di artikel Arstechnica Bagaimana Internet bekerja: Serat kapal selam, otak dalam toples, dan kabel koaksial .
Jadi, bagaimana berbagai sistem yang berjalan pada platform perangkat keras yang berbeda terhubung ke jaringan yang berbeda dapat berkomunikasi satu sama lain? Bagaimana komunikasi antara susunan sistem dan jaringan yang begitu luas dan heterogen? Bagaimana semua ini bisa terjadi secara bersamaan?
2. Suite Protokol Internet
Jawabannya diberikan oleh paket protokol Internet, alias paket protokol TCP / IP. Pertanyaan-pertanyaan ini dipertimbangkan selama proses desain arsitektur Internet (TCP / IP Illustrated, Bagian 1.1: Prinsip Arsitektur):
Beberapa tujuan memandu penciptaan arsitektur Internet. Dalam [C88], Clark menceritakan bahwa tujuan utamanya adalah untuk "mengembangkan teknik yang efektif untuk pemanfaatan multipleks jaringan yang ada yang saling terhubung." Inti dari pernyataan ini adalah bahwa arsitektur Internet harus dapat menghubungkan beberapa jaringan yang berbeda dan bahwa beberapa kegiatan harus dapat berjalan secara bersamaan pada jaringan yang saling berhubungan yang dihasilkan .
Dari Internet Protocol Suite (Wikipedia):
Suite protokol Internet adalah model konseptual dan seperangkat protokol komunikasi yang digunakan di Internet dan jaringan komputer serupa.
Suite protokol Internet menyediakan komunikasi data ujung ke ujung yang menentukan bagaimana data harus dipaketkan, diatasi, dikirimkan, dialihkan, dan diterima . Fungsionalitas ini disusun dalam empat lapisan abstraksi yang digunakan untuk mengurutkan semua protokol terkait sesuai dengan cakupan jaringan yang terlibat.
Salah satu cara untuk memikirkan protokol TCP / IP adalah sebagai spesifikasi untuk bagaimana proses berjalan pada sistem yang berbeda dan jaringan yang berbeda dapat berkomunikasi satu sama lain. Pada dasarnya, TCP / IP protocol suite menyediakan standar untuk komunikasi antar-proses.
Sistem apa pun yang mengimplementasikan rangkaian protokol TCP / IP dengan benar dapat menggunakan fungsi yang disediakannya untuk memungkinkan prosesnya berkomunikasi melalui Internet. Bahkan, agar proses berkomunikasi melalui Internet dengan proses lain berjalan pada sistem jarak jauh di jaringan lain, sistem harus memanfaatkan protokol TCP / IP suite yang sesuai standar.
3. Aplikasi
Dari Perangkat Lunak Aplikasi (Wikipedia):
Program aplikasi (singkatnya aplikasi atau aplikasi) adalah program komputer yang dirancang untuk melakukan sekelompok fungsi, tugas, atau aktivitas yang terkoordinasi untuk kepentingan pengguna. Contoh aplikasi termasuk pengolah kata, spreadsheet, aplikasi akuntansi, browser web, pemutar media, simulator penerbangan penerbangan, permainan konsol atau editor foto. Perangkat lunak aplikasi kata benda kolektif mengacu pada semua aplikasi secara kolektif. Ini kontras dengan perangkat lunak sistem, yang terutama berkaitan dengan menjalankan komputer.
Suatu aplikasi dapat dianggap sebagai proses ruang pengguna yang berjalan pada suatu sistem. Selain contoh-contoh yang tercantum di atas, ini dapat mencakup program-program seperti (mode non-kernel) virus komputer, server web, aplikasi kamera, dan program agregasi data sensor.
Ketika suatu aplikasi mentransmisikan dan menerima data melalui Internet, ia harus memanfaatkan implementasi paket protokol TCP / IP sistem hostnya. Dari lapisan Aplikasi (Wikipedia):
Dalam TCP / IP, lapisan aplikasi berisi protokol komunikasi dan metode antarmuka yang digunakan dalam komunikasi proses-ke-proses di jaringan komputer Protokol Internet (IP). Lapisan aplikasi hanya menstandarkan komunikasi dan tergantung pada protokol lapisan transport yang mendasarinya untuk membangun saluran transfer data host-ke-host dan mengelola pertukaran data dalam model jaringan klien-server atau peer-to-peer.
Lapisan aplikasi rangkaian protokol TCP / IP termasuk protokol seperti File Transfer Protocol (FTP), Domain Name System (DNS) dan mungkin yang paling terkenal, Hypertext Transfer Protocol (HTTP).
Sebagai contoh, protokol lapisan aplikasi HTTP menentukan bagaimana data ditransmisikan antara 2 proses yang berjalan pada (biasanya) sistem yang berbeda: aplikasi klien, browser web, dan aplikasi server, proses server web.
Klarifikasi Kesalahpahaman Potensi
Dalam Diagram 2, ini menunjukkan representasi dari "tumpukan" perangkat lunak yang digunakan komputer (PC) untuk membuat, memproses, dan mengirim pesan, di internet, ke komputer lain.
Paket protokol TCP / IP bukan tumpukan perangkat lunak. Dari Technopedia :
Tumpukan perangkat lunak adalah sekelompok program yang bekerja bersama-sama untuk menghasilkan hasil atau mencapai tujuan bersama. Tumpukan perangkat lunak juga merujuk pada setiap set aplikasi yang bekerja dalam urutan yang spesifik dan terdefinisi untuk mencapai tujuan bersama, atau kelompok utilitas atau aplikasi rutin apa pun yang berfungsi sebagai set. File yang dapat diinstal, definisi perangkat lunak dari produk dan tambalan dapat dimasukkan dalam tumpukan perangkat lunak. Salah satu tumpukan perangkat lunak berbasis Linux yang populer adalah LAMP (Linux, Apache, MYSQL, Perl atau PHP atau Python). MENANG (Windows Server, Internet Explorer, .NET, SQL Server) adalah tumpukan perangkat lunak berbasis Windows yang populer.
Sebaliknya, ini adalah tumpukan protokol, biasanya diimplementasikan oleh kernel (juga dari Technopedia ):
Tumpukan protokol mengacu pada sekelompok protokol yang berjalan bersamaan yang digunakan untuk implementasi rangkaian protokol jaringan.
Protokol dalam tumpukan menentukan aturan interkonektivitas untuk model jaringan berlapis seperti dalam model OSI atau TCP / IP. Untuk menjadi stack, protokol harus dapat dioperasikan untuk dapat menghubungkan secara vertikal antara lapisan jaringan dan secara horizontal antara titik akhir dari setiap segmen transmisi.
Apakah semua jenis komputer - smartphone / tv / gameconsoles, dll menggunakan format ini ?
Paket protokol TCP / IP adalah spesifikasi komunikasi independen perangkat keras dan sistem operasi, bukan format . Jika suatu proses yang berjalan pada satu platform perangkat keras perlu berkomunikasi dengan proses yang berjalan pada sistem jarak jauh pada platform perangkat keras yang berbeda dan komunikasi dilakukan melalui Internet, maka sistem harus
- mengimplementasikan protokol TCP / IP dan
- protokol yang sesuai dalam rangkaian ini harus digunakan untuk mencapai komunikasi antar-proses
(Dalam hal ini) apakah ada perbedaan antara internet seluler dan Wifi / Ethernet?
Interpretasi saya terhadap pertanyaan ini adalah "Apakah ada perbedaan dalam cara perangkat seluler terhubung ke jaringan GSM dan cara perangkat seluler terhubung ke jaringan WiFi?"
Perbedaannya terletak pada lapisan antarmuka jaringan.
Pertanyaan ini memaparkan penggambaran miskin dari paket protokol TCP / IP dalam diagram di artikel yang ditautkan dalam pertanyaan. Untuk referensi, berikut adalah diagramnya:
Lapisan terendah, disebut sebagai "perangkat keras", harus disebut sebagai lapisan tautan , lapisan kontrol akses media (MAC) atau lapisan antarmuka jaringan .
Dari "Tutorial TCP / IP dan Tinjauan Teknis" IBM halaman 34:
Lapisan antarmuka jaringan, juga disebut lapisan tautan atau lapisan data-tautan, adalah antarmuka ke perangkat keras jaringan yang sebenarnya. Antarmuka ini mungkin atau mungkin tidak menyediakan pengiriman yang andal, dan mungkin berorientasi paket atau aliran. Bahkan, TCP / IP tidak menentukan protokol apa pun di sini, tetapi dapat menggunakan hampir semua antarmuka jaringan yang tersedia, yang menggambarkan fleksibilitas lapisan IP. Contohnya adalah IEEE 802.2, X.25 (yang dapat diandalkan sendiri), ATM, FDDI, dan bahkan SNA.
Berikut ini adalah penggambaran yang benar dan unggul (dari The TCP / IP Guide ):
Alasan pembahasan lapisan antarmuka jaringan itu relevan adalah karena pada lapisan inilah ada perbedaan dalam cara perangkat seluler / seluler terhubung ke jaringan GSM vs. jaringan WiFi.
saat menghubungkan ke jaringan GSM, protokol lapisan antarmuka jaringan yang digunakan untuk menangani koneksi antara perangkat seluler dan stasiun pemancar dasar (BTS) biasanya ditentukan oleh 3G
saat menghubungkan ke titik akses nirkabel WiFi (WAP), protokol yang digunakan ditentukan oleh standar IEEE 802.11 .
Bagaimana dengan perangkat fungsi tunggal yang tampaknya tidak memiliki lapisan "Aplikasi" - mis. Kamera yang terhubung ke web, sakelar lampu, atau termostat
Seperti dijelaskan sebelumnya, protokol di lapisan aplikasi TCP / IP protocol suite menyediakan standar untuk bagaimana data aplikasi dipertukarkan di antara proses.
Lapisan-lapisan itu konseptual. Mereka tidak berada dalam sistem atau platform perangkat keras.
Kamera yang terhubung ke web, sakelar lampu, dan termostat mungkin memiliki proses yang berjalan di atasnya yang berkomunikasi melalui Internet dengan proses yang berjalan pada sistem jarak jauh (memeriksa pembaruan firmware, pertukaran data dengan server, dll.). Proses-proses ini, atau aplikasi, akan memanfaatkan implementasi TCP / IP protocol suite untuk mencapai komunikasi antar-proses ini.
Paket protokol TCP / IP dan Sistem Tertanam ("IoT")
Meskipun ada berbagai aplikasi yang berbeda yang memanfaatkan protokol lapisan aplikasi yang berbeda yang berjalan pada PC atau server tradisional, tidak ada banyak perbedaan dalam hal bagaimana platform perangkat keras terhubung ke titik akses masing-masing (antarmuka jaringan / lapisan tautan data). Ini terutama dilakukan dengan kabel atau nirkabel melalui Ethernet.
Situasi agak berbeda ketika datang ke berbagai sistem embedded yang berkomunikasi melalui TCP / IP. Berikut adalah ilustrasi tentang ini (dari Postscapes ):
Untuk info lebih lanjut, lihat artikel ini:
Memahami Protokol di Balik Internet of Things
Standar dan Protokol IOT
Buku Panduan Teknologi IoT