Implementation of Elastic IP for Public Cloud

Zhangfeng Hu,Siqing Sun,Chuanji Gao,Yanjun Li,Qiuzheng Ren,Baozhu Li,Xiong Li
DOI: https://doi.org/10.1145/3507971.3507996
2021-01-01
Abstract:A VPC (Virtual Private Cloud) in a public cloud often allocates private IP addresses which are not globally routable, to virtual resources, e.g., ECSs (Elastic Cloud Server), ELBs (Elastic Load Balancer) and so on. An EIP (Elastic IP) is a static IP that can be mapped to a private IP address of virtual resource deployed in VPC to make it reachable from outside of a public cloud, e.g., from a client in the Internet. As a public cloud usually holds millions of EIPs which can be dynamically allocated to virtual entities inside of VPCs, legacy firewall or router-based NAT (Network Address Translation) solutions cannot fulfil the requirements of public cloud in dynamicity, flexibility, scalability, and some other aspects. In this paper we propose a hierarchically clustered EIP implementation system for public cloud. The system implements the translation from private IP to EIP in two stages, and stage 1 performs the translation from a private IP to a floating IP which is in a locally routable IP space while stage 2 performs the translation from a floating IP to an EIP which is allocated from IANA (Internet Assigned Numbers Authority) directly or from an Internet service provider and can be accessed from the Internet. This hierarchically clustered implementation system brings many benefits such as good scalability to support millions of EIPs, more flexibility to apply access control to the traffic between different VPCs, support of dynamically allocating an EIP to different virtual entities when needed.
What problem does this paper attempt to address?