Kerja mengawal trafik pada pautan antara dua nod bersebelahan selesai dalam "lapisan pautan"; fungsi paling asas lapisan pautan data adalah untuk menyediakan pengguna lapisan ini dengan penghantaran data yang telus dan boleh dipercayai Perkhidmatan, lapisan pautan data adalah untuk meningkatkan fungsi lapisan fizikal untuk menghantar aliran bit asal, mengubah kemungkinan sambungan fizikal yang terdedah kepada ralat yang disediakan oleh lapisan fizikal menjadi pautan data tanpa ralat logik, supaya ia kelihatan ralat. -percuma kepada baris lapisan rangkaian.
Persekitaran pengendalian tutorial ini: sistem Windows 10, komputer DELL G3.
Ia dilakukan pada lapisan pautan
Lapisan pautan data fungsi paling asas adalah untuk menyediakan perkhidmatan penghantaran data asas yang telus dan boleh dipercayai kepada pengguna di lapisan ini. Ketelusan bermakna tiada sekatan pada kandungan, format dan pengekodan data yang dihantar pada lapisan ini, dan tidak perlu menjelaskan maksud struktur maklumat yang boleh dipercayai menghilangkan kebimbangan pengguna tentang kehilangan maklumat, mengganggu maklumat, dan susunan yang salah. Situasi ini mungkin berlaku dalam lapisan fizikal dan kod pembetulan ralat mesti digunakan dalam lapisan pautan data untuk mengesan dan membetulkan ralat. Lapisan pautan data meningkatkan fungsi lapisan fizikal untuk menghantar aliran bit asal Ia mengubah sambungan fizikal yang mungkin terdedah kepada ralat yang disediakan oleh lapisan fizikal kepada pautan data tanpa ralat secara logik, menjadikannya kelihatan sebagai talian bebas ralat. kepada lapisan rangkaian.
Pengetahuan lanjutan: Kawalan aliran
Kawalan ralat ialah sebahagian daripada fungsi lapisan pautan data , Satu lagi bahagian penting ialah kawalan aliran. Kawalan aliran melibatkan mengawal kadar penghantaran aksara atau bingkai pada pautan supaya penerima mempunyai ruang simpanan penimbal yang mencukupi untuk menerima setiap aksara atau bingkai sebelum menerima. Sebagai contoh, dalam pautan terminal-komputer berorientasikan aksara, jika komputer jauh menyediakan banyak terminal, ia mungkin terlebih muatan buat sementara waktu kerana ia tidak dapat menghantar semua aksara pada kadar yang telah ditetapkan semasa waktu puncak. Begitu juga, dalam sistem permintaan penghantaran semula automatik berorientasikan bingkai, apabila bilangan bingkai yang perlu diakui meningkat, kapasiti storan penimbal mungkin melebihi, menyebabkan beban berlebihan.
Skim XON/XOFF
Meningkatkan ruang storan penimbal boleh mengurangkan perbezaan kadar penghantaran antara pihak yang menerima dan menghantar ke tahap tertentu, tetapi ini adalah pasif Kaedah negatif dan negatif mempunyai banyak kesulitan dan batasan dalam pelaksanaan. Di satu pihak, sistem tidak membenarkan penubuhan ruang penimbal yang terlalu besar sebaliknya, apabila kelajuan tidak sepadan dengan ketara dan fail besar dihantar, ruang penimbal masih tidak mencukupi. Skim XON/XOFF ialah kaedah kawalan aliran yang lebih aktif dan proaktif. Dalam skema XON/XOFF, sepasang aksara kawalan digunakan untuk melaksanakan kawalan aliran XON menggunakan aksara kawalan DC1 dalam set aksara ASCII, dan XOFF menggunakan aksara kawalan DC3 dalam set aksara ASCII. Apabila penerima pada rantaian komunikasi terlebih beban, ia menghantar aksara XOFF kepada pengirim dan kemudian menghentikan sementara menghantar data Selepas penerima telah memproses data dalam memori penimbal dan lebihan dipulihkan, ia menghantar aksara XON kepada pengirim. . , untuk memberitahu pengirim untuk menyambung semula penghantaran data. Semasa proses penghantaran data, kitaran XOFF dan XON boleh diulang beberapa kali, tetapi ia telus kepada pengguna. Banyak pakej perisian komunikasi data tak segerak menyokong protokol XON/XOFF. Skim ini juga boleh digunakan untuk komputer menghantar aksara kepada pencetak atau peranti terminal lain, dalam hal ini komponen kawalan dalam pencetak atau peranti terminal digunakan untuk mengawal aliran aksara.
Mekanisme tetingkap
Untuk meningkatkan penggunaan saluran yang berkesan. Seperti yang dinyatakan dalam bahagian sebelum ini, penghantar menghantar beberapa bingkai secara berterusan tanpa menunggu bingkai pengesahan kembali. Proses penghantaran ini adalah seperti saluran paip berterusan, jadi ia juga dipanggil teknologi saluran paip. Memandangkan berbilang bingkai terlipat yang tidak dikenali dibenarkan untuk dihantar secara berterusan, nombor bingkai boleh dibezakan menggunakan nombor binari berbilang bit. Oleh kerana mana-mana bingkai yang dihantar tetapi tidak diakui mungkin tersilap atau hilang dan memerlukan penghantaran semula, bingkai ini mesti dikekalkan. Ini memerlukan pengirim untuk mempunyai penimbal penghantaran yang besar untuk mengekalkan bingkai yang tidak diketahui yang mungkin memerlukan penghantaran semula. Walau bagaimanapun, kapasiti penimbal sentiasa terhad Jika penerima tidak dapat memproses bingkai yang diterima pada kadar penghantaran pengirim, ia mungkin masih kehabisan kapasiti penimbal dan menjadi terlampau beban buat sementara waktu. Untuk tujuan ini, langkah pelarasan yang serupa dengan skema RQ melahu boleh diperkenalkan Intinya adalah untuk mengehadkan bilangan bingkai yang boleh dihantar oleh pengirim sebelum menerima bingkai tertentu terbitan semula ini dicapai dengan mengesahkan bilangan bingkai. Jika penerima tidak mempunyai masa untuk memproses bingkai yang diterima, penerima berhenti menghantar maklumat pengakuan Pada masa ini, cetakan semula pengirim meningkat Apabila had pengeluaran semula dicapai, tiada bingkai baharu akan dihantar sehingga maklumat pengakuan diterima semula. Untuk melaksanakan penyelesaian ini, bilangan maksimum bingkai yang tidak diakui harus ditetapkan dalam penghantaran semula bingkai yang tidak diakui Had ini dipanggil tetingkap penghantaran pautan. Jelas sekali, jika tetingkap ditetapkan kepada 1, iaitu kapasiti penimbal pengirim adalah sama dengan satu bingkai, skim kawalan penghantaran akan kembali kepada skema RQ terbiar Pada masa ini, kecekapan penghantaran adalah sangat rendah had tetingkap hendaklah dipilih supaya penerima boleh memproses atau menerimanya seberapa banyak yang boleh. Sudah tentu, faktor seperti panjang bingkai maksimum, kapasiti penimbal yang tersedia, dan kadar bit penghantaran juga mesti dipertimbangkan semasa memilih. Terbitan semula ialah senarai nombor jujukan berturut-turut yang sepadan dengan bingkai yang dihantar oleh pengirim tetapi belum diakui. Nombor jujukan bingkai ini mempunyai nilai maksimum, iaitu had tetingkap penghantaran. Tetingkap penghantaran yang dipanggil merujuk kepada sempadan baris gilir nombor bingkai yang telah dihantar tetapi belum disahkan oleh penghantar Sempadan atas dan bawah masing-masing dipanggil tepi atas dan bawah tetingkap penghantaran, dan jarak antara tepi atas dan bawah dipanggil saiz tingkap. Penerima juga mempunyai tetingkap terima, yang menunjukkan bilangan jujukan bingkai yang dibenarkan untuk diterima. Sempadan atas dan bawah tetingkap penerima turut meluncur mengikut masa.
Setiap kali pengirim menghantar bingkai, bilangan bingkai yang perlu diakui meningkat sebanyak 1 sama, setiap kali pengirim menerima mesej pengesahan, bilangan bingkai yang akan diakui berkurangan sebanyak 1. Apabila nilai kiraan penghantaran semula, iaitu, bilangan bingkai yang perlu diakui, adalah sama dengan tetingkap penghantaran, bingkai baharu dihentikan dihantar. Secara amnya, nombor bingkai hanya mengambil nombor perduaan terhad, dan ia akan berkitar berulang kali selepas tempoh masa tertentu Jika nombor bingkai dilengkapi dengan nombor perduaan 3 digit, nombor bingkai akan berkitar antara 0 dan 7. Apabila proses penghantaran sedang berjalan, kedudukan tetingkap terus meluncur, jadi ia juga dipanggil tetingkap gelongsor (Tetingkap Gelongsor), atau hanya tetingkap gelongsor.
Proses perubahan keadaan tetingkap gelongsor boleh diterangkan seperti berikut (dengan mengandaikan bahawa tetingkap penghantaran ialah 2 dan tetingkap penerimaan ialah 1).
Dalam keadaan awal, pengirim tidak menghantar bingkai, dan tepi depan dan belakang tetingkap penghantaran adalah sama. Had tetingkap terima ialah 1, yang membolehkan bingkai 0 diterima.
Penghantar telah menghantar bingkai No. 0. Pada masa ini, port penghantaran terbuka (iaitu, tepi hadapan dinaikkan sebanyak 1), dan tetingkap diselaraskan dengan No. 0, menunjukkan bahawa bingkai telah dihantar tetapi mesej pengembalian pengesahan masih belum diterima. Status tetingkap terima adalah sama seperti sebelumnya, menunjukkan penerimaan 0 bingkai dibenarkan.
Penghantar terus menghantar bingkai No. 1 sebelum menerima maklumat pengembalian pengesahan bingkai 0. Status tetingkap penghantaran kekal tidak berubah.
Pengirim telah menerima bingkai 0 dan tetingkap meluncur satu ruang, menunjukkan bahawa ia sudah bersedia untuk menerima bingkai 1. Status tetingkap penghantaran kekal tidak berubah.
Penghantar telah menerima maklumat pengembalian pengesahan bingkai No. 0, dan tepi belakang tetingkap penghantaran dinaikkan sebanyak 1, menunjukkan bahawa bingkai No. 0 dipadamkan daripada penerbitan semula dan status tetingkap penerimaan kekal tidak berubah.
Penghantar terus menghantar 2 bingkai, dan tepi hadapan tetingkap penghantaran dinaikkan sebanyak 1, menunjukkan bahawa bingkai 2 turut disertakan dalam senarai pengesahan yang belum selesai. Status tetingkap
yang menerima kekal tidak berubah.
Penerima telah menerima bingkai No. 1, dan tetingkap penerima meluncur satu ruang, menunjukkan bahawa ia sedia untuk menerima bingkai No. 2. Status tetingkap penghantaran kekal tidak berubah.
Penghantar menerima mesej pengesahan daripada penerima bahawa bingkai No. 1 telah diterima, dan tepi mengekor tetingkap penghantaran meningkat sebanyak 1, menunjukkan bahawa bingkai masuk terawal No. 1 dipadamkan daripada semula -penerbitan. Status tetingkap penerimaan kekal tidak berubah. Secara umumnya, sebarang bingkai yang tiba dalam julat tertentu, walaupun ia di luar urutan, mesti diterima oleh penerima. Jika julat ini dianggap sebagai tetingkap penerima, saiz tetingkap penerimaan hendaklah lebih besar daripada 1, dan Go-back-N ialah kes khas di mana tetingkap penerimaan adalah sama dengan 1. Penghantaran semula terpilih juga boleh dianggap sebagai protokol tetingkap gelongsor, kecuali tetingkap penghantaran dan tetingkap penerimaannya lebih besar daripada 1. Jika kita melihat tiga protokol RQ terbiar, Go-back-N dan penghantaran semula terpilih secara seragam dari perspektif tetingkap gelongsor, perbezaan di antaranya terletak pada saiz tetingkap masing-masing:
RQ Terbiar: hantar tetingkap = 1 , tetingkap terima=1
Kembali-N: tetingkap hantar>1, tetingkap terima=1
Pilih hantar semula: tetingkap hantar>1, tetingkap terima>1
Jika nombor jujukan bingkai menggunakan pengekodan binari 3 digit, nombor jujukan maksimum ialah SMAX=2^3-1=7. Untuk mod penerimaan yang dipesan, saiz maksimum tetingkap penghantaran dipilih sebagai SMAX untuk mod penerimaan bukan pagar, saiz maksimum tetingkap penghantaran adalah paling banyak separuh daripada julat nombor urutan. Pemasa yang menguruskan kawalan tamat masa hendaklah sama dengan bilangan penimbal hantar, bukan saiz ruang nombor jujukan. Malah, setiap penimbal harus sepadan dengan pemasa Apabila pemasa tamat, kandungan penimbal yang sepadan dihantar semula. Bilangan penimbal yang mesti ditetapkan oleh penerima hendaklah sama dengan saiz tetingkap terima, bukan saiz ruang nombor jujukan.
Untuk lebih banyak pengetahuan berkaitan, sila lawati ruangan Soalan Lazim!
Atas ialah kandungan terperinci Di manakah kerja mengawal trafik pada pautan antara dua nod bersebelahan dilakukan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!