Bidirectional Multi-Tenant Cloud Routing with IPv6-to-IPv4 NAT
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing cloud computing platforms face challenges in facilitating bidirectional communications between multi-tenant services and customer virtual networks (VNets) with overlapping private IP addresses, leading to inefficiencies and resource waste due to the need for service-controlled jumpbox VMs and increased latency.
Innovation Solution
A cloud compute platform assigns unique IPv6 addresses to VMs with private IPv4 addresses, performing stateful address translation to enable service-initiated communications without requiring jumpbox VMs, using platform routing components to translate between IPv6 and IPv4 addresses.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If service-controlled jumpbox VMs are deployed to enable bidirectional communications between multi-tenant services and customer VNets with overlapping private IP addresses, then communication capability is achieved, but device complexity and resource consumption increase
Solution Approach 1:
The patent introduces a network address translation (NAT) gateway as an intermediary component that mediates communications between multi-tenant services and customer VNets. The NAT gateway translates IPv6 addresses (used by multi-tenant services) to IPv4 addresses (used by customer VNets), enabling bidirectional communication without requiring jumpbox VMs in each customer VNet. This single intermediary component replaces the need for multiple service-controlled jumpbox VMs across different customer networks.
Solution Approach 2:
The NAT gateway performs multiple functions: it acts as an IPv6-to-IPv4 address translator, serves as a routing intermediary, and enables both inbound and outbound communications. This universal component handles all communication needs between multi-tenant services and various customer VNets with overlapping IP ranges, eliminating the need for separate jumpbox VMs for each service-VNet pair.
2Adaptability or versatility
If service-controlled jumpbox VMs are used to facilitate communications, then bidirectional communication is enabled, but resource consumption increases due to additional VMs
Solution Approach 1:
The NAT gateway serves as a shared intermediary resource that all multi-tenant services can use to communicate with customer VNets. Instead of each service requiring its own jumpbox VM, the single NAT gateway handles translations for all services, significantly reducing the total number of VM instances required in the system.
Solution Approach 2:
The patent merges the functionality of multiple jumpbox VMs into a single NAT gateway component. By combining address translation, routing, and communication mediation functions into one shared service, the system reduces the quantity of virtual machine resources needed while maintaining full communication capability.
3Adaptability or versatility
If jumpbox VMs are deployed for each customer VNet, then communication routing is achieved, but latency increases due to additional routing hops
Solution Approach 1:
The NAT gateway is positioned as a centralized intermediary that provides a direct translation path between IPv6 and IPv4 address spaces. This eliminates the need for multiple routing hops through jumpbox VMs located in each customer VNet, reducing the number of network hops and associated latency for communications between multi-tenant services and customer resources.
Data Source
AI summary
A disclosed method facilitates bidirectional traffic flows between a multi-tenant service and endpoints with private customer internet protocol (IP) addresses. The method provides for receiving a data packet having a data packet header identifying a first IPv6 address as a destination. The first IPv6 address embeds a first IPv4 address and a virtual network (VNet) identifier uniquely identifying a VNet of a cloud compute platform. The method further provides for routing the data packet to a host node within the cloud compute platform that hosts a virtual machine (VM) within the VNet identified by the VNet identifier and assigned to the first IPv4 address.


