[网络领域顶会追踪系列#13][NSDI'22]BlueBird:面向裸金属云服务的高性能SDN
Bluebird: High-performance SDN for Bare-metal Cloud Services
背景
裸金属云服务是一种IaaS(Infrastructure as a Service,基础设施即服务),能够为用户提供专用的服务器硬件,以及其它云中共享基础设施(包括网络和存储)的访问权。
工作
作者介绍了设计、实现、部署Bluebird的经验,Bluebird是Azure的裸金属云服务的一个高性能网络虚拟化系统。
Bluebird使用高性能可编程交换ASIC(专用集成电路)构建数据面,这个设计保证了Azure网络虚拟化所需要的高性能、可扩展性和转发能力。
Bluebird使用了一些完善的技术原理来保证可扩展性和高可用性,包括路由缓存、设备抽象和本地代理到远程控制器的解耦。
实验
Bluebird系统已经在Azure运行超过两年时间。在这期间,它服务了数千个裸金属租户节点,并在保证每个启用Bluebird的SDN交换机小于1us的最大时延的前提下,提供了裸金属服务器的全线速网卡(最高达100Gbps)。作者分享了在Azure运行裸金属服务的经验,以及用于支持bluebird交换机的P4数据面程序。
原文摘要
The bare-metal cloud service is a type of IaaS (Infrastructure as a Service) that offers dedicated server hardware to customers along with access to other shared infrastructure in the cloud, including network and storage.
This paper presents our experiences in designing, implementing, and deploying Bluebird, the high-performance network virtualization system for the bare-metal cloud service on Azure. Bluebird's data plane is built using high-performance programmable switch ASICs. This design allows us to ensure the high performance, scale, and custom forwarding capabilities necessary for network virtualization on Azure. Bluebird employs a few well-established technical principles in the control plane that ensure scalability and high availability, including route caching, device abstraction, and architectural decoupling of switch-local agents from a remote controller.
The Bluebird system has been running on Azure for more than two years. During this time, it has served thousands of bare-metal tenant nodes and delivered full line-rate NIC speed of bare-metal servers of up to 100Gb/s while ensuring less than 1µs of maximum latency at each Bluebird-enabled SDN switch. We share our experiences of running bare-metal services on Azure, along with the P4 data plane program used in the Bluebird-enabled switches.