Benarkah TCP kependekan dari TCP / IP dan artinya sama?
Apakah mungkin TCP dibangun di atas protokol lain selain IP ?
Benarkah TCP kependekan dari TCP / IP dan artinya sama?
Apakah mungkin TCP dibangun di atas protokol lain selain IP ?
Jawaban:
TCP dan IP (v4 & v6) jelas dapat dipisahkan, dan yang satu tidak menyiratkan yang lain, sebagaimana dibuktikan oleh contoh TCP melalui IPX ( RFC 1791 ).
Namun, TCP tidak dapat dibangun di atas sembarang protokol jaringan. Dua alasan:
Spesifikasi TCP, RFC 793 , bukan sumber yang baik untuk memutuskan pertanyaan ini, karena ia mengakui bahwa ia meninggalkan antarmuka dengan lapisan bawah yang sebagian besar tidak ditentukan.
Catatan a) Agar TCP dapat menyusun kembali datagram yang dicetak pada selembar kertas kecil (baik yang dibawa oleh merpati atau jaringan corvid yang lebih cerdas), ukuran muatan harus ditulis di lokasi standar. Atau, lapisan adaptasi heuristik menentukan ukuran segmen. Pemindai optik yang digunakan dalam implementasi tumpukan host dari spesifikasi pembawa unggas ( RFC 1149 ) termasuk lapisan adaptasi heuristik, tetapi tetap tidak berdokumen.
Saya belum membaca seluruh RFC tetapi bahasa di bagian 1.4 tampaknya menyarankan bahwa protokol "tingkat bawah" dapat digunakan.
Antarmuka antara TCP dan protokol tingkat yang lebih rendah pada dasarnya tidak ditentukan kecuali bahwa diasumsikan ada mekanisme di mana kedua level dapat secara asinkron menyampaikan informasi satu sama lain. Biasanya, seseorang mengharapkan protokol level bawah untuk menentukan antarmuka ini. TCP dirancang untuk bekerja di lingkungan yang sangat umum dari jaringan yang saling terhubung. Protokol tingkat bawah yang diasumsikan di seluruh dokumen ini adalah Protokol Internet.
TCP bukan kependekan dari TCP / IP.
TCP / IP sering digunakan sebagai cara singkat untuk mengatakan " The Internet Protocol Suite " dan biasanya termasuk protokol standar lainnya. Ketika orang mengatakan TCP / IP mereka biasanya termasuk UDP over IP (di mana UDP digunakan sebagai pengganti TCP) dan banyak sekali protokol lain seperti ARP, ICMP, DNS, SNMP dan protokol layer aplikasi lainnya.
Aplikasi menggunakan protokol Layer Aplikasi seperti SMTP (untuk email). Ini duduk di salah satu dari dua protokol layer transport - TCP dan UDP. Beberapa protokol lapisan aplikasi akan menggunakan salah satu atau keduanya UDP dan TCP tetapi kebanyakan digunakan hanya dengan satu protokol lapisan transport.
TCP dan UDP adalah dua protokol layer transport yang digunakan di Internet Protocol Suite. Jika ada yang lain saya tidak tahu tentang mereka dan yang lain akan mewakili penggunaan spesialis yang semakin kecil. Protokol layer transport lain telah didefinisikan - penggunaannya mungkin hanya mewakili sebagian kecil dari lalu lintas IP global †
Meskipun secara teori dimungkinkan untuk menggunakan TCP lebih dari sesuatu selain IP, dalam praktiknya TCP selalu digunakan melalui IP - Protokol Internet. IP memindahkan paket antar jaringan (anggap IP menghubungkan beberapa LAN secara bersamaan)
Ethernet hanyalah keluarga paling populer dari protokol layer-link tingkat rendah yang digunakan TCP / IP, tetapi TCP / IP juga banyak digunakan di ATM dan yang lainnya.
Satu-satunya protokol layer transport yang digunakan secara signifikan pada jaringan yang menggunakan Internet Protocol Suite adalah TCP dan UDP.
† Hanya untuk bersenang-senang, saya mengukur lalu lintas di (sangat) LAN kecil saya, yang mencakup NetBIOS (lebih dari TCP), SSH, Rsync, Email, pembaruan perangkat lunak, DNS, obrolan Windows-box umum dan beberapa jenis lalu lintas lainnya.
Perhatikan juga pernyataan ini di FAQ Google untuk protokol QUIC mereka
Mengapa Anda tidak membangun protokol yang sama sekali baru, daripada menggunakan UDP? Kotak tengah di Internet saat ini umumnya akan memblokir lalu lintas kecuali jika itu adalah lalu lintas TCP atau UDP
(penekanan saya)
Alasan mengapa TCP / IP adalah singkatan yang umum (berlawanan dengan, katakanlah UDP / IP atau SCTP / IP) adalah karena dua protokol dirancang bersama, dan dalam makalah asli oleh Vint Cerf dan Bob Kahn, kedua konsep tersebut adalah digabungkan menjadi satu protokol tunggal. Segera setelah itu mereka dibagi menjadi IP untuk menyediakan routing dan TCP untuk menyediakan kontrol aliran, multiplexing, deteksi kesalahan, dll. Tidak sampai enam tahun kemudian UDP diperkenalkan untuk memberikan lapisan multiplexing "ringan" tanpa sisa dari overhead yang terlibat dengan TCP.
Meski demikian, TCP dan IP adalah dua hal yang terpisah dan sepenuhnya dan sengaja independen. Fakta bahwa TCP tidak memerlukan IP segera terlihat dengan fakta bahwa TCP dapat berjalan tanpa dimodifikasi pada IPv4 dan IPv6, yang merupakan dua protokol yang sama sekali berbeda.
Dengan sedikit kerja, Anda dapat membuat protokol yang bersaing untuk IP yang akan melayani tujuan yang sama, tetapi mungkin harus mengandung sebagian besar jika tidak semua fitur yang sama, dan mungkin akhirnya akan tampak sangat mirip IP. Anda bisa berargumen bahwa ekstensi ke IP (seperti IPSec) adalah protokol layer 3 yang efektif, jadi begitulah.
Anda dapat mengganti IP dengan sesuatu yang lain. Sebenarnya, itulah yang Anda lakukan saat menggunakan TCP over IPv6. TCP masih TCP, tetapi IP v6 bukan v4.
AFAIK, tidak ada yang membuat protokol layer-3 lain untuk bekerja dengan TCP di atasnya, tetapi tidak ada alasan Anda tidak bisa.
TCP dan IP seperti mentega di atas roti.
Anda dapat memasangkan apa pun yang bekerja dengan baik protokol, tapi dua ini sangat melengkapi itu hanya lezat cara yang dapat diandalkan untuk mentransfer data dan mengisi perut dengan data internet. Ini melumasi tabung untuk memungkinkan bahan makanan kering lainnya dan handshaking data sama untuk mendukung pasangan ini. Tetapi sama sekali tidak eksklusif.
T Namun, apakah TCP tidak mungkin dibangun di atas protokol lain selain IP?
A Ya itu mungkin. Saya suka contoh Kode Morse dan Pigeon dari TCP tanpa IP.
Saya selalu mendengar bahwa TCP adalah kependekan dari TCP / IP
Sebenarnya itu singkatan dari Transmission Control Protocol over Internet Protocol
dan mereka berarti hal yang sama.
Itu tidak benar.
Pertama, Ethernet adalah sistem perangkat keras tingkat rendah yang mengontrol bagaimana fungsi bagian perangkat keras yang sebenarnya.
Selanjutnya, pikirkan IP sebagai sistem telepon atau rambu lalu lintas. Ini memberikan kontrol dasar menghubungkan sistem dua titik bersama.
TCP di sisi lain lebih seperti sistem pesan atau petugas kontrol lalu lintas yang mengarahkan pesan / mobil ke titik yang benar.
Secara bersamaan, TCP / IP, menyediakan sistem transfer data yang andal ke dan dari dua perangkat yang terhubung.
Dengan Internet, saat Anda ingin mengirim atau menerima data, bagian IP sistem adalah bagian yang mengontrol pembuatan koneksi perangkat keras yang sebenarnya dengan kabel (atau gelombang nirkabel). Bagian TCP dari sistem adalah perangkat lunak yang bertanggung jawab untuk mengambil data dan memecahnya, mengirimkannya, menyusun kembali data yang diterima, dan memeriksa data dan mengirim kembali jika perlu.
Ada banyak penjelasan dengan analogi dan rincian teknis yang tersedia, terutama dalam bentuk video . DifferenceBetween.net memiliki yang sangat bagus tentang subjek yang tepat ini .
Namun, apakah TCP tidak mungkin dibangun di atas protokol lain selain IP?
Ya, Anda memang bisa membuat sistem alternatif untuk TCP yang menggunakan IP. Lihatlah Internet Protocol Suite untuk beberapa detail.
> the fact that !TCP can go over IP does not necessarily mean TCP can go over !IP Huh?
psusi mencoba menjadi pintar dengan menggunakan "!" sebagai "bukan operator". Komentarnya harus dibaca sebagai: "fakta bahwa sesuatu yang bukan TCP dapat melebihi IP tidak selalu berarti TCP dapat membahas sesuatu yang bukan IP". Itu dibuat mengacu pada kalimat terakhir dari jawaban Anda, yang menunjukkan keberadaan "Sistem alternatif ke TCP". Namun menunjukkan bahwa ada alternatif untuk TCP tidak berarti atau mengisyaratkan bahwa alternatif untuk IP ada.
TCP adalah protokol lapisan 4. Ini memberikan transportasi data yang terjamin dalam bentuk aliran yang dipesan dari satu proses pada komputer ke proses lain pada komputer yang sama / yang lain.
IP adalah protokol layer 3. Ini menyediakan transportasi dari satu host ke yang lain.
Selama ada protokol yang dapat melakukan transfer data dari host ke host, TCP akan berfungsi.
Jadi, TCP dapat diimplementasikan melalui protokol apa pun, tetapi, Kami hanya membuat IP. IP sederhana dan berfungsi.
Tidak perlu untuk protokol Layer 3 lainnya.
Ketika Anda mendesain jaringan, Anda harus memilih seperangkat protokol (yang pada dasarnya adalah seperangkat aturan komunikasi antar mesin), untuk masing-masing dari berbagai "lapisan" (yang dapat Anda bayangkan sebagai tingkat abstraksi yang berbeda, yang diinginkan oleh perancang jaringan untuk perlu diingat saat membuat dan menggabungkan protokol).
Versi lebih sederhana: protokol seperti kotak tempat kita menaruh pesan . Kotak-kotak itu memiliki ukuran yang berbeda, dan Anda menempatkan pesan Anda di kotak terkecil, kemudian kotak terkecil di dalam kotak yang sedikit lebih besar, dll. Memilih seperangkat protokol adalah memilih jenis kotak yang akan Anda gunakan, untuk masing-masing " layer "yang mengelilingi pesan Anda.
TCP dan IP adalah protokol untuk dua lapisan independen, yang dibuat bersama dan dapat digunakan bersama; tetapi bisa sangat baik digunakan dengan protokol lain. Itu cukup sering terjadi: Anda dapat menggunakan IP bersama dengan protokol non-TCP, atau TCP bersama dengan protokol non-IP .
Alasan mengapa TCP / IP adalah singkatan yang umum adalah karena kedua protokol tersebut membentuk, bersama-sama, dasar dari Internet dan merupakan kunci keberhasilannya .
(TCP dan IP memang memiliki beberapa fungsi yang dirancang khusus untuk mereka berfungsi bersama, yang merupakan sesuatu yang sering dikeluhkan oleh para puritan, tetapi mereka tidak benar-benar mencegah Anda untuk berinteraksi dengan protokol lain)
Saya pikir itu mungkin untuk menjalankan TCP melalui IPX transport, jika Anda ingin menjadi retro.
Namun, apakah TCP tidak mungkin dibangun di atas protokol lain selain IP?
Selain TCP / IPv4 dan TCP / IPv6 klasik, beberapa protokol eksperimental telah dirancang, misalnya:
Sebagai bagian dari upaya Net100 dan Probe kami dalam meningkatkan transfer massal melalui jaringan latensi tinggi dan kecepatan tinggi, kami telah mengembangkan versi TCP yang diinstrumentasi dan dapat disesuaikan yang berjalan di atas UDP. Transport seperti UDP TCP berfungsi sebagai uji coba untuk bereksperimen dengan kontrol mirip TCP pada level aplikasi yang mirip dengan TReno.
Dan iproxy: Menjalankan layanan TCP melalui UDP , yang lebih menyenangkan:
iproxy terdiri dari proksi sisi klien dan proksi sisi server yang memungkinkan layanan TCP / IP sewenang-wenang untuk dijalankan melalui Broadcast, Multicast atau Unicast UDP. Awalnya dirancang sebagai metode untuk mengkonfigurasi server yang belum diberi alamat IP pada LAN menggunakan antarmuka berbasis web.
Jadi Anda lihat: TCP pada UDP unicast, dan bahkan TCP pada siaran atau UDP multicast !
AFAIK hanya TCP / IPv4 dan TCP / IPv6 yang menikmati penyebaran besar.
Jawabannya adalah tidak! Misalnya ada RFC lama yang menggambarkan TCP melalui IPX: http://tools.ietf.org/html/rfc1791
Bagi mereka yang memiliki ingatan pendek, IPX adalah protokol Novell Netware: http://en.wikipedia.org/wiki/Internetwork_Packet_Exchange
Implementasi TCP di atas berbagai protokol yang mendukung transportasi datagram dasar sudah ada. Bahkan kebutuhannya bahkan tidak menentukan informasi routing (TCP bahkan tidak perlu IP untuk bekerja, hanya sebuah tautan serila dengan penerima implisit akan cukup).
Jadi Anda menerapkan TCP di atas UDP (keuntungan: Anda menggunakan satu port di sisi "server", atau Anda dapat menanamkannya di koneksi yang ada dengan mengangkut berbagai saluran multiplex). Hanya level IP yang menyediakan perutean, tetapi TCP tidak membutuhkannya. Yang penting adalah bahwa konsep MTU disediakan oleh lapisan bawah.
Ini memungkinkan protokol untuk melewati batasan NAT traversal, tanpa perlu mendaftarkan port terjemahan UPnP untuk host tertentu. Ini memungkinkan penyetelan independen MTU dan MSS, dioptimalkan untuk setiap klien, bukan oleh setiap router bersama menengah. Protokol perutean lainnya dimungkinkan (termasuk untuk pengiriman melalui jaringan Multicast dan broadcast). Dan Anda memiliki pilihan mekanisme keamanan.
Contoh penggunaannya adalah Gogo6.net (yang mengimplementasikan saluran transport IPv6 melalui sesi TCP menggunakan implementasi ulang TCP melalui UDP v4 (ini berfungsi pada sebagian besar router akses rumah yang masih hanya memiliki alamat IPv4, dan tidak selalu mendukung metode UPnP ; tanpa perlu mengonfigurasinya oleh pengguna menggunakan nomor port konstan khusus untuk aplikasi, bahkan ketika itu tidak berjalan)
Contoh lain adalah mengenkapsulasi TCP over HTTP (atau HTTPS) versi 1.1 dengan aslinya "streamed" ekstensi. Sebagian besar VPN yang memungkinkan menjembatani jaringan melalui Internet akan melakukan hal yang sama. Jembatan bahkan dapat merangkum beberapa protokol: Ethernet, PPP, IPv4 dan IPv6 (memperluas LAN lokal atau segmen Ethernet saja), NetBEUI / LanMan, penemuan router (dalam jaringan yang dijalin), termasuk dalam mode mentah (memungkinkan DHCPv4 atau DHCPv6) di jaringan yang dijembatani. HTTPS digunakan karena enkapsulasi melalui HTTPS juga memungkinkan enkripsi, dan otentikasi untuk membangun dan mengamankan jembatan, tetapi tidak memerlukan otentikasi / enkripsi ujung-ke-ujung untuk klien dan server melalui jaringan yang terhubung, dan karena router sangat dioptimalkan untuk HTTP dan HTTPS.
Ada beberapa contoh sistem komunikasi di militer yang menggunakan TCP tetapi bukan IP karena jalur kom adalah koneksi tipe serial yang tidak dialihkan melalui router, dll. Jika Anda melihat paket TCP sebelum diteruskan dengan bidang IP, maka tampaknya mudah untuk tidak menggunakan IP jika protokol "perutean" Anda berbeda.