Hello VPP experts, We are using VPP for NAT44 and are currently looking at how to move from VPP 20.05 to 20.09. There are some differences in the way the NAT plugin is configured.
One difficulty for us is the maximum number of sessions allowed, we need to handle large numbers of sessions so that limit can be important for us. For VPP 20.05 we have used "translation hash buckets 1048576" and then the maximum number of sessions per thread becomes 10 times that because of this line in the source code in snat_config(): sm->max_translations = 10 * translation_buckets; So then we got a limit of about 10 million sessions per thread, which we have been happy with so far. With VPP 20.09 however, things have changed so that the maximum number of sessions is now configured explicitly, and the relationship between max_translations_per_thread and translation_buckets is no longer a factor of 10 but instead given by the nat_calc_bihash_buckets() function: static u32 nat_calc_bihash_buckets (u32 n_elts) { return 1 << (max_log2 (n_elts >> 1) + 1); } The above function corresponds to a factor of somewhere between 1 and 2 instead of 10. So, if I understood this correctly, for a given maximum number of sessions, the corresponding translation_buckets value will be something like 5 to 10 times larger in VPP 20.09 compared to how it was in VPP 20.05, leading to significantly increased memory requirement given that we want to have the same maximum number of sessions as before. It seems a little strange that the translation_buckets value would change so much between VPP versions, was that change intentional? The old relationship "max_translations = 10 * translation_buckets" seems to have worked well in practice, at least for our use case. What could we do to get around this, if we want to switch to VPP 20.09 but without reducing the maximum number of sessions? If we were to simply divide the nat_calc_bihash_buckets() value by 8 or so to make it more similar to how it was earlier, would that lead to other problems? Best regards, Elias
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#18160): https://lists.fd.io/g/vpp-dev/message/18160 Mute This Topic: https://lists.fd.io/mt/78533277/21656 Group Owner: vpp-dev+ow...@lists.fd.io Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-