Menghitung persyaratan IP NAT statis

Halaman ini berlaku untuk Apigee, tetapi tidak untuk Apigee hybrid.

Lihat Dokumentasi Apigee Edge.

Traffic arah selatan antara Apigee dan backend target dengan alamat IP publik menggunakan Cloud NAT untuk menerjemahkan alamat IP pribadi instance Apigee ke alamat IP publik. Jika backend target Anda memerlukan listingan yang diizinkan IP, Anda dapat mencadangkan dan mengaktifkan IP NAT statis untuk traffic keluar. Topik ini menjelaskan cara menghitung jumlah minimum IP NAT statis yang diperlukan untuk mendukung perkiraan traffic.

Sebelum memulai

Jika memilih menggunakan alokasi IP NAT statis untuk mendukung listingan yang diizinkan, Anda harus menghitung jumlah minimum IP statis yang diperlukan untuk mendukung lalu lintas yang diantisipasi. Untuk penghitungan ini, Anda akan memerlukan informasi berikut:

  • Waktu maksimum per transaksi: Ini adalah waktu maksimum, dalam detik, yang akan dibutuhkan transaksi, dari awal permintaan hingga akhir respons.
  • Transaksi maksimum per detik (TPS): Ini adalah jumlah maksimum transaksi per detik yang mungkin dapat didukung oleh instance Apigee.
  • TPS maksimum untuk satu backend unik: Ini adalah jumlah maksimum transaksi per detik yang mungkin dapat didukung oleh backend tunggal.
  • Jumlah lingkungan maksimum: Jumlah maksimum lingkungan pada instance Apigee ini.

Hitung jumlah IP statis yang diperlukan

Anda dapat menggunakan rumus berikut untuk menghitung jumlah minimum IP NAT yang perlu ditetapkan secara statis:

  1. Hitung jumlah maksimum port sumber NAT yang diperlukan per backend sebagai $ S $.
    $$ S = \lceil (150 + T) \times B \rceil $$

    Dengan keterangan:

    • $ T $ adalah waktu maksimum per transaksi, dalam detik.
    • $ B $ adalah TPS maksimum untuk satu backend unik.
    • {i>$ \lceil \rceil $ adalah fungsi plafon (bilangan bulat terkecil), yang berarti membulatkan ke atas ke bilangan bulat berikutnya
  2. Hitung port minimum yang digunakan oleh instance Apigee sebagai $ N $.
    $$ N = max(4096 \times E, \lceil {512 \over 75} \times R \rceil) + 6144 $$

    Dengan keterangan:

    • $ E $ adalah jumlah lingkungan Apigee.
    • $ R $ adalah TPS maksimum untuk instance Apigee.
    • $ \lceil \rceil $ adalah fungsi plafon (bilangan bulat terkecil), yang berarti membulatkan ke atas ke bilangan bulat berikutnya
    • Fungsi $ \mathit{max}() $ mengambil nilai maksimum dari dua nilai.
  3. Ambil jumlah maksimum port yang diperlukan sebagai $ P $.
    $$ P = max(S, N) $$

    Dengan keterangan:

    • $ S $ adalah jumlah maksimum porta sumber NAT yang diperlukan, sebagaimana dihitung pada Langkah 1.
    • $ N $ adalah jumlah minimum port yang digunakan oleh instance Apigee, seperti yang dihitung di Langkah 2.
    • Fungsi $ \mathit{max}() $ mengambil nilai maksimum dari dua nilai.
  4. Hitung jumlah minimum IP NAT yang diperlukan sebagai $ I $.
    $$ I = \lceil P / 64512 \rceil $$

    Dengan keterangan:

    • $ P $ adalah jumlah maksimum port yang diperlukan, dihitung di Langkah 3.
    • $ \lceil \rceil $ adalah fungsi plafon (bilangan bulat terkecil), yang berarti membulatkan ke atas ke bilangan bulat berikutnya

Contoh

Contoh 1

Dalam contoh ini, kami mengharapkan maksimum 10.000 TPS di 1 lingkungan. Transaksi adalah semua permintaan HTTP GET dan durasi transaksi persentil ke-99 adalah 50 milidetik (md). Permintaan ini dilayani secara tidak merata oleh kumpulan server di belakang 3 backend load balancer, dengan salah satu load balancer mengambil 5.000 TPS, yang lain mengambil 3.000 TPS, dan dengan load balancer sebesar 2.000 TPS.

Untuk contoh ini, nilai kunci adalah sebagai berikut:

  • Waktu maksimum per transaksi: 50 md
  • TPS maksimum untuk instance Apigee: 10.000
  • TPS maksimum untuk satu backend: 5.000
  • Jumlah lingkungan Apigee: 1

Dengan menggunakan rumus yang diuraikan sebelumnya, kita dapat menghitung jumlah IP NAT yang diperlukan:

  1. $$ \lceil (150 + 0.050) \times 5000 \rceil = \lceil 150.050 \times 5000 \rceil = \lceil 750250 \rceil = 750250 $$

    Jumlah maksimum port sumber NAT yang diperlukan per backend, dengan asumsi tidak ada penggunaan ulang koneksi, adalah 750.250.

  2. $$ max(4096 \times 1, \lceil {512 \over 75} \times 10000 \rceil) + 6144 $$
    $$ max(4096, \lceil 6.827 \times 10000 \rceil) + 6144 $$
    $$ max(4096, \lceil 68270 \rceil) + 6144 $$
    $$ 68270 + 6144 = 74414 $$

    Jumlah minimum port sumber NAT yang digunakan oleh runtime Apigee adalah 74.414.

  3. $$ max(750250, 74414) = 750250 $$

    Jumlah maksimum port sumber NAT yang diperlukan per instance adalah 750.250.

  4. $$ \lceil 750250 / 64512 \rceil = \lceil 11.630 \rceil = 12 $$

    Jumlah minimum NAT IP yang diperlukan untuk mendukung maksimum 10.000 TPS masing-masing sebesar 50 md (atau , dengan IP backend tunggal dan pasangan port yang mendukung maksimum 5.000 TPS, adalah 12.

Contoh 2

Dalam contoh ini, kami mengharapkan maksimum 1.000 TPS di 20 lingkungan Apigee. Tujuan Durasi persentil ke-99 untuk transaksi ini adalah 5 detik. Permintaan ini akan dilayani oleh 8 backend target, dengan traffic yang biasanya didistribusikan merata di semua backend tersebut. Dengan pertimbangan untuk pemeliharaan dan pemadaman, backend tunggal tidak diharapkan untuk melayani lebih dari 250 TPS.

Untuk contoh ini, nilai kunci adalah sebagai berikut:

  • Waktu maksimum per transaksi: 5 d
  • Transaksi per detik (TPS) maksimum: 1.000
  • TPS maksimum untuk satu backend: 250
  • Jumlah lingkungan Apigee: 20

Dengan menggunakan rumus yang diuraikan sebelumnya, kita dapat menghitung jumlah IP NAT yang diperlukan:

  1. $$ \lceil (150 + 5) \times 250 \rceil = \lceil 155 \times 250 \rceil = \lceil 38750 \rceil = 38750 $$

    Jumlah maksimum port sumber NAT yang diperlukan per backend, dengan asumsi tidak ada penggunaan ulang koneksi, adalah 38.750.

  2. $$ max(4096 \times 20, \lceil {512 \over 75} \times 1000 \rceil) + 6144 $$
    $$ max(81920, \lceil 6.827 \times 1000 \rceil) + 6144 $$
    $$ max(81920, \lceil 6827 \rceil) + 6144 $$
    $$ 81920 + 6144 = 88064 $$

    Jumlah minimum port sumber NAT yang digunakan oleh runtime Apigee adalah 88.064.

  3. $$ max(38750, 88064) = 88064 $$

    Jumlah maksimum port sumber NAT yang diperlukan per instance adalah 88.064.

  4. $$ \lceil 88064 / 64512 \rceil= \lceil 1.365 \rceil= 2 $$

    Jumlah minimum NAT IP yang diperlukan untuk mendukung maksimum 1.000 TPS masing-masing selama 5 detik (atau kurang), dengan IP backend tunggal dan pasangan port yang mendukung maksimum 250 TPS, adalah 2.

Contoh 3

Dalam contoh ini, kami ingin menghitung TPS maksimum yang dapat dicapai dengan 2 IP NAT menjadi satu backend target. Waktu maksimum per transaksi diperkirakan 100 md.

Untuk contoh ini, nilai kunci adalah sebagai berikut:

  • Waktu maksimum per transaksi: 100 md
  • Jumlah IP NAT: 2

Dalam hal ini, kita dapat menggunakan rumus di Langkah 4 dan Langkah 1 untuk menghitung jumlah maksimum Port sumber NAT yang disediakan dan jumlah TPS yang dapat didukung oleh port sumber tersebut:

  1. $$ 2 = \lceil P / 64512 \rceil $$
    $$ 129024 = P $$

    Jumlah maksimum port sumber NAT yang disediakan adalah 129.024.

  2. $$ 129024 = \lceil (150 + 0.100) \times B \rceil $$
    $$ 129024 = \lceil 150.1 \times B \rceil $$
    $$ \lfloor 129024 / 150.1 \rfloor = B $$
    $$ \lfloor 859.587 \rfloor = B $$
    $$ 859 = B $$

    TPS maksimum adalah 859 dengan 2 IP NAT ke backend tunggal, dengan asumsi tidak ada penggunaan ulang koneksi.