English· Español· Deutsch· Nederlands· Français· 日本語· ქართული· 繁體中文· 简体中文· Português· Русский· العربية· हिन्दी· Italiano· 한국어· Polski· Svenska· Türkçe· Українська· Tiếng Việt· Bahasa Indonesia

un

tamu
1 / ?
kembali ke pelajaran

Inbound & Outbound sebagai Set yang Berbeda

Graf Bipartit dalam Arsitektur Jaringan

Sebuah grap bipartit membagi node menjadi dua set, dengan edge hanya diperbolehkan antar set (tidak pernah dalam set).

Batasan jaringan memiliki struktur bipartit alami:

- Sisi Ingress: luar klien di satu sisi, layanan internal di sisi lain. Edge: permintaan eksternal masuk, respons internal keluar.

- Sisi Egress: layanan internal di satu sisi, tujuan eksternal di sisi lain. Edge: layanan internal memulai panggilan keluar, respons eksternal kembali.

Asimetri:

- Ingress: set sumber adalah tidak terbatas (siapa pun di internet). Set tujuan adalah kecil (beberapa layanan). Volume skala dengan pengguna.

- Egress: set sumber adalah kecil (beberapa layanan internal). Set tujuan adalah terbatas (beberapa mitra yang diketahui). Volume skala dengan aktivitas internal.

Desain single-box menggabungkan kedua set bipartit melalui satu node. Node tersebut memiliki fan-in dari luar (ingress) DAN fan-in dari dalam (arahan egress sebaliknya). Beban node = jumlah dari kedua sisi.

Desain terbagi mempertahankan kedua set bipartit di node yang terpisah. Setiap node menghandle satu peran dengan skala yang tepat.

Bipartit ingress & egress: set node terpisah, vertex potong terpisah

Gambarlah graf bipartit untuk SaaS kecil: 5 titik akhir klien eksternal (mengirim permintaan masuk), 3 layanan internal (backend), & 4 API mitra eksternal (dipanggil keluar). Identifikasi mana edge yang termasuk dalam set ingress bipartit & mana yang termasuk dalam set bipartit egress. Prediksi apa yang terjadi pada koneksi graf jika salah satu layanan internal gagal.

Sebelum Pembagian: Vertex Potong di Mana Saja

Single-Box: Semua Koneksitas di Satu Titik

Sebelum pemisahan, satu kotak proxy berada di antara setiap pasangan eksternal/internal. Dalam istilah grafik, ini adalah titik potong tingkat tinggi: penghapusan ini memutuskan setiap klien dari setiap backend dan setiap layanan internal dari setiap mitra eksternal.

Koneksitas di node ini = 1. Apa pun yang mengganggu node ini (keruntuhan proses, gangguan jaringan, pembunuhan OOM) memutuskan setiap jalur tergantung.

Setelah Pemisahan: Titik Potong Digantikan oleh Dua Node yang Lebih Ringan

Pemisahan menjadi ingress + egress menciptakan dua node grafik di mana sebelumnya hanya ada satu. Setiap node sekarang berdiri di satu setengah bipartite:

- Node ingress: titik potong untuk setengah bipartite eksternal-klien-ke-layanan-internals

- Node egress: titik potong untuk setengah bipartite layanan-internals-ke-mitra

Lingkaran balik geometris hilang: di grafik single-box, layanan internal yang mencoba mencapai layanan menghadap ke luar melalui alamat publik memerlukan perjalanan melalui titik yang sama dua kali (keluar melalui peran egress, kemudian masuk melalui peran ingress). Di grafik yang dipisah, perjalanan menabrak dua vertex yang berbeda.

Koneksitas per sisi tetap 1, tetapi dua titik potong dapat digantikan secara independen. Menambahkan proxy ingress kedua meningkatkan koneksitas sisi ingress ke 2 tanpa mengubah sisi egress.

Replication Per Sisi

Fleets produksi seringkali menjalankan 2+ proxy ingress (HA) DAN 2+ proxy egress (HA). Setiap sisi mencapai koneksitas 2 secara independen. Kapasitas skalabelateral secara horizontal sesuai kebutuhan.

Tim saat ini menjalankan satu kotak proxy (satu titik potong untuk arah baik). Mereka membaginya menjadi satu ingress + satu egress, kemudian menambahkan ingress kedua (pasangan HA) tetapi tetap menggunakan satu egress. Jalani perubahan koneksi grafik di setiap langkah, dan identifikasi setengah bipartite yang masih 1-terhubung setelah langkah 3 (yang merupakan mode kegagalan toleransi terendah).

Toleransi Pembagian Jaringan

Sinopsis

Kini Anda dapat membaca arsitektur jaringan sebagai graf bipartit, mengidentifikasi vertex potong, dan mengikuti koneksi per setengah.

Terapkan ini pada partisi jaringan.

Sebuah partisi jaringan adalah potongan graf: tepi di atas partisi gagal; kedua sisi tetap beroperasi tetapi tidak dapat saling mencapai satu sama lain.

Sistem terdistribusi geografis memiliki dua data center yang terhubung oleh satu link inter-DC. Lalu lintas masuk melalui DC1; lalu lintas keluar melewati DC1 ke mitra eksternal; beberapa layanan internal hidup di DC2 dan menghubungi DC1 untuk operasi berbasis state.

Prediksi apa yang terjadi jika link antar-DC gagal: (1) setengah bipartite mana yang tetap terhubung di dalam setiap DC, (2) arus lalu lintas yang terus berlanjut dan yang berhenti, & (3) usulkan satu perubahan arsitektur yang memungkinkan sistem untuk toleransi pembagian ini dengan degradasi terbatas daripada pemutusan layanan penuh.

Catatan Tambahan

Catatan Tambahan

Geometri pelajaran ini merekonstruksi pelajaran utama Pemisahan Ingress & Egress sebagai analisis graf bipartit.

Catatan kompanion berikutnya, geometry_of_failure_modes_and_blast_radius, menghasilkan sentralitas antara (mengidentifikasi node botol) & min-cut (menentukan jangkauan ledakan).

Baik dilakukan.