Tambah pautan WAN kedua dan terowong pun naik, tetapi salinan fail masih tersekat apabila satu laluan bergoyang. Pautan sihat dan proses VPN berjalan; yang hilang ialah kontrak antara pembawa dan terowong. Beberapa soket tidak berkelakuan seperti satu sambungan secara automatik, dan aplikasi di atasnya tidak dapat membezakan sehingga penghantaran gagal. Setiap bahagian kontrak sepadan dengan kegagalan yang boleh anda uji, dan itulah yang menjadikannya berguna.

Tulis kontrak itu sebelum memilih produk. Ia mempunyai empat bahagian: aliran yang diterima VPN, cara pembawa memulihkan data yang hilang, identiti titik akhir mana yang bertahan apabila laluan berubah, dan cara keseluruhannya berkelakuan apabila satu laluan gagal.

Gejalanya: pautan naik, sesi masih terputus

Graf pemantauan yang menunjukkan kedua-dua pautan naik hanya membuktikan setiap laluan boleh membawa trafik. Ia tidak membuktikan VPN melihat satu aliran tersusun, paket yang hilang pada satu laluan dipulihkan pada laluan lain, atau rakan sebaya masih tahu sesi mana yang sedang bercakap. Selebihnya kontrak merangkumi perkara yang graf itu tidak dapat tunjukkan.

Apabila pemindahan tersekat, ketahui sama ada pembawa terus menghantar pada laluan yang bertahan. Jika sesi mati semasa pautan kedua melahu, pembawa tidak pernah menggunakannya. Jika sesi bertahan tetapi data tiba tidak tersusun atau berganda, pembawa memindahkan paket tanpa kontrak peringkat sambungan. Cap masa pada kedua-dua belah biasanya menjelaskannya.

Perbezaan itu menentukan pembaikan. Masalah penghalaan atau dasar memerlukan perubahan pemilihan laluan; lapisan susunan dan pemulihan yang hilang memerlukan pengangkutan lain, bukan penimbal yang lebih besar.

Jaminan satu: aliran bait peringkat sambungan

Jika VPN memerlukan aliran tersusun yang boleh dipercayai, pembawa mesti mengenal pasti julat bait di atas laluan individu. Setiap sambungan TCP asas hanya menomborkan segmennya sendiri, jadi penerima tidak boleh menyusun semula merentas laluan menggunakan nombor itu sahaja.

Multipath TCP ialah contoh piawai. Ia membentangkan satu aliran bait yang boleh dipercayai sambil menyelaraskan beberapa subaliran TCP, dengan pemetaan jujukan dan pengakuan pada peringkat data. Aplikasi membaca aliran, bukan subaliran yang kebetulan menghantar sekeping dahulu.

Pada Linux, MPTCP ialah opt-in setiap soket melalui IPPROTO_MPTCP. Apabila rundingan tidak dapat menggunakan tingkah laku multipath, sandaran yang didokumenkan ialah TCP biasa, bermakna aplikasi mungkin terus berfungsi melalui satu laluan tanpa pernah menggunakan yang kedua. Semak tingkah laku yang sebenarnya dirundingkan oleh soket yang dipasang dan bukan menganggap tetapan kernel terpakai.

Jaminan dua: susunan, penggandaan dan pemulihan

Laluan dengan kelewatan dan kadar kehilangan berbeza memaksa pembawa menimbal, menyusun semula dan menghantar semula. Kontrak mesti menyatakan berapa banyak penimbalan dibenarkan, tekanan balik yang dilihat aplikasi dan laluan mana yang membawa penghantaran semula.

Laluan yang kekal bersambung tetapi berhenti menghantar lebih sukar daripada penutupan bersih. Pembawa mesti mengesannya, memindahkan data tertunggak dan mengelakkan menunggu selamanya segmen yang tidak akan tiba. Semakan mudah bahawa kedua-dua pautan naik tidak merangkumi keadaan ini.

Penggandaan memerlukan peraturannya sendiri. Menghantar muatan yang sama pada kedua-dua laluan boleh meningkatkan kependaman, tetapi penerima mesti menahan salinan sebelum ia sampai ke VPN. Anti-replay IPsec adalah pilihan setiap persatuan keselamatan dan memeriksa nombor jujukan; lapisan penggandaan yang menyusun semula atau memainkan semula paket boleh mencetuskannya atau menyembunyikan masalah sehingga terowong jatuh.

Jaminan tiga: identiti titik akhir dan penyertaan laluan

Rakan sebaya memerlukan cara stabil untuk mengenali sesi apabila laluan baharu muncul. Jika setiap laluan disahkan sebagai terowong berasingan, VPN mungkin melihat dua sesi bukan satu. Jika pembawa menggabungkan laluan di bawah satu sesi, ia mesti menentukan cara laluan baharu disahkan dan apa yang berlaku kepada yang lama.

Catat alamat dan pengecam mana yang kekal stabil: titik akhir terowong, pengecam sesi pembawa dan sebarang proksi di antaranya. Proksi menambah sempadan ketersediaan dan kepercayaan lain walaupun ia tidak pernah melihat muatan yang dilindungi.

Di sinilah dasar juga terletak. Laluan yang menyertai dari rangkaian tidak dijangka mungkin sah secara teknikal dan masih melanggar model kepercayaan yang dimaksudkan. Tentukan sama ada laluan baharu diterima secara automatik, memerlukan pengesahan atau ditolak.

Jaminan empat: tingkah laku terbatas semasa kegagalan

Uji kegagalan laluan sepenuhnya, bukan hanya laluan perlahan. Laluan yang bertahan harus membawa sesi tanpa pertumbuhan memori tanpa had, dan pemulihan tidak boleh bergantung pada pemasa yang lebih lama daripada yang dapat ditanggung aplikasi. Apabila laluan yang gagal kembali, pembawa mesti memutuskan sama ada untuk mengimbangi semula atau membiarkan aliran di tempatnya.

Tetapkan had untuk penimbalan, penghantaran semula dan bilangan laluan, kemudian sahkan di bawah kehilangan, penyusunan semula, penggandaan dan ketidakseimbangan kelewatan. Lebar jalur agregat ialah nombor paling tidak menarik di sini; kesinambungan penghantaran dan had memori ialah kontraknya.

Jauhkan keadaan pemulihan pembawa daripada keadaan kriptografi VPN. Lapisan kebolehpercayaan tersuai yang menggantikan pengesahan atau penyulitan mantap bukan jalan pintas, dan penggunaan semula nombor jujukan merentas lapisan menjadikan perlindungan replay dan diagnostik tidak boleh dipercayai.

Terima pembawa dengan pelan ujian

Tulis keempat-empat jaminan sebagai semakan lulus atau gagal: satu aliran tersusun, pemulihan ditentukan, identiti sesi stabil, tingkah laku kegagalan terbatas. Jalankan setiap semakan dengan satu laluan terdegradasi dan kemudian dengan satu laluan dibuang.

Satu pemindahan fail yang berjaya melalui perubahan laluan tidak membuktikan operasi berterusan. Ulangi pemindahan sambil menukar laluan pilihan, dan periksa pandangan pembawa serta pembilang VPN sendiri. Jika kedua-duanya tidak bersetuju tentang laluan mana yang membawa data, kontrak itu belum dapat diperhatikan.

Simpan matriks yang diluluskan bersama penggunaan. Ia memberitahu jurutera seterusnya tingkah laku apa yang dijanjikan, gabungan laluan mana yang diuji dan mod kegagalan mana yang masih tidak disokong, tanpa satu lagi pusingan meneka daripada lampu status pautan.

Artikel berkaitan