+ All Categories
Home > Documents > Azure Accelerated Networking: SmartNICs in the Public CloudTHE DESIGN OF THE SMARTNIC. Multiple...

Azure Accelerated Networking: SmartNICs in the Public CloudTHE DESIGN OF THE SMARTNIC. Multiple...

Date post: 17-Jul-2021
Category:
Upload: others
View: 2 times
Download: 0 times
Share this document with a friend
26
AZURE ACCELERATED NETWORKING: SMART NICS IN THE PUBLIC CLOUD Firestone, D et al
Transcript
Page 1: Azure Accelerated Networking: SmartNICs in the Public CloudTHE DESIGN OF THE SMARTNIC. Multiple options to consider: ASIC-based NICs Multicore SoC NICs FPGA NICs Burn host cores. ASIC.

AZURE ACCELERATED NETWORKING: SMART NICS IN

THE PUBLIC CLOUDFirestone, D et al

Page 2: Azure Accelerated Networking: SmartNICs in the Public CloudTHE DESIGN OF THE SMARTNIC. Multiple options to consider: ASIC-based NICs Multicore SoC NICs FPGA NICs Burn host cores. ASIC.

NETWORK VIRTUALIZATION

Virtualization of OSI Layers 2 – 7

Routers and Switches implemented on software simulate physical routers and switches

Provides similar features to those found on physical networking hardware, including: Route Tables Subnets DHCP DNS Firewalls Access Control List (ACL) Network Address Translation (NAT)

Page 3: Azure Accelerated Networking: SmartNICs in the Public CloudTHE DESIGN OF THE SMARTNIC. Multiple options to consider: ASIC-based NICs Multicore SoC NICs FPGA NICs Burn host cores. ASIC.

SOFTWARE DESIGNED NETWORKING (SDN)

Cloud providers (AWS, Azure) enable customers to configure virtual networks through software

Such networks run on the cloud platform hypervisor (NOT within the customer’s virtual machines)

Cloud providers generally provide free SDN to the end customers Only pay for outbound data and virtual networking peering (per GB) and public

IPv4 addresses

https://azure.microsoft.com/en-us/pricing/details/virtual-network/

Page 4: Azure Accelerated Networking: SmartNICs in the Public CloudTHE DESIGN OF THE SMARTNIC. Multiple options to consider: ASIC-based NICs Multicore SoC NICs FPGA NICs Burn host cores. ASIC.

AZURE VIRTUAL FILTERING PLATFORM (VFP)

Page 5: Azure Accelerated Networking: SmartNICs in the Public CloudTHE DESIGN OF THE SMARTNIC. Multiple options to consider: ASIC-based NICs Multicore SoC NICs FPGA NICs Burn host cores. ASIC.

Virtual Machine 1Virtual

Machine 2Virtual

Machine 3

THE HIDDEN COST OF NETWORKING

CPU CPU CPU CPU CPU CPU CPU CPU CPU CPU

Physical Server

Hypervisor processes, including SDN

Each rented CPU generates ~$900/year in revenue

Page 6: Azure Accelerated Networking: SmartNICs in the Public CloudTHE DESIGN OF THE SMARTNIC. Multiple options to consider: ASIC-based NICs Multicore SoC NICs FPGA NICs Burn host cores. ASIC.

Virtual Machine 1Virtual

Machine 2Virtual

Machine 3

THE HIDDEN COST OF NETWORKING

CPU CPU CPU CPU CPU CPU CPU

Virtual Machine 4

CPU CPU CPU

Physical Server

Hypervisor processes, including SDN

Can we get here?

Page 7: Azure Accelerated Networking: SmartNICs in the Public CloudTHE DESIGN OF THE SMARTNIC. Multiple options to consider: ASIC-based NICs Multicore SoC NICs FPGA NICs Burn host cores. ASIC.

HOST SDN

Host with SDNPhysical NIC

Virtual Machines

Page 8: Azure Accelerated Networking: SmartNICs in the Public CloudTHE DESIGN OF THE SMARTNIC. Multiple options to consider: ASIC-based NICs Multicore SoC NICs FPGA NICs Burn host cores. ASIC.

SR-IOV (SINGLE ROOT IO VIRTUALIZATION)

Page 9: Azure Accelerated Networking: SmartNICs in the Public CloudTHE DESIGN OF THE SMARTNIC. Multiple options to consider: ASIC-based NICs Multicore SoC NICs FPGA NICs Burn host cores. ASIC.

COMPARISION

Host SDN

Host SDN is full-featured

It is slow and expensive!

SR-IOV

SR-IOV is fast

It cannot apply all SDN rules

Can we get the best of both?

Page 10: Azure Accelerated Networking: SmartNICs in the Public CloudTHE DESIGN OF THE SMARTNIC. Multiple options to consider: ASIC-based NICs Multicore SoC NICs FPGA NICs Burn host cores. ASIC.

GENERIC FLOW TABLE (GFT) OFFLOAD

Just-In-Time Compilation

For the first packet in each flow, route it through Host SDN to apply polices

Store the result in a hash-table (based upon L2/L3/L4 properties) in the SR-IOV NIC

The SR-IOV routes all subsequent packets over the VF directly to the VM

Page 11: Azure Accelerated Networking: SmartNICs in the Public CloudTHE DESIGN OF THE SMARTNIC. Multiple options to consider: ASIC-based NICs Multicore SoC NICs FPGA NICs Burn host cores. ASIC.

DESIGN GOALS

1. Minimize burning of CPU cores

2. Maintain programmability

3. Be as good as SR-IOV

4. Be extensible for new features

5. Be with the entire fleet

6. Achieve high single-connection performance

7. Scale to 100GbE+

8. Be serviceable

Overall focus on cost minimization

Page 12: Azure Accelerated Networking: SmartNICs in the Public CloudTHE DESIGN OF THE SMARTNIC. Multiple options to consider: ASIC-based NICs Multicore SoC NICs FPGA NICs Burn host cores. ASIC.

SR-IOV WITH GFT VS SNAP?

How do the design goals of SR-IOV with GFT compare to those of SNAP?

Consider the following dimensions:

CPU Utilization

Programmability

Throughput

Future-proof

Compatibility

Single-connection performance

100GbE

Serviceability

Security

Page 13: Azure Accelerated Networking: SmartNICs in the Public CloudTHE DESIGN OF THE SMARTNIC. Multiple options to consider: ASIC-based NICs Multicore SoC NICs FPGA NICs Burn host cores. ASIC.

THE DESIGN OF THE SMARTNIC

Multiple options to consider: ASIC-based NICs Multicore SoC NICs FPGA NICs Burn host cores

Page 14: Azure Accelerated Networking: SmartNICs in the Public CloudTHE DESIGN OF THE SMARTNIC. Multiple options to consider: ASIC-based NICs Multicore SoC NICs FPGA NICs Burn host cores. ASIC.

ASIC

Application Specific Integrated Circuit

High performance

1-2 years development-to-manufacturing lead time

Cannot be changed after manufacturing

For well-specified, non-evolving applications, such as Bitcoin Mining (pictured), ASICs offer maximum performance for cost

Page 15: Azure Accelerated Networking: SmartNICs in the Public CloudTHE DESIGN OF THE SMARTNIC. Multiple options to consider: ASIC-based NICs Multicore SoC NICs FPGA NICs Burn host cores. ASIC.

MULTICORE SOC

Socket on Chip

Provides Linux environment, where one can run DPDK

Works well up to 40GbE

Page 16: Azure Accelerated Networking: SmartNICs in the Public CloudTHE DESIGN OF THE SMARTNIC. Multiple options to consider: ASIC-based NICs Multicore SoC NICs FPGA NICs Burn host cores. ASIC.

FPGA

Field Programable Gate Array

Like an ASIC but can be reprogrammed

Already used within Microsoft for Bing (Catapult)

Page 17: Azure Accelerated Networking: SmartNICs in the Public CloudTHE DESIGN OF THE SMARTNIC. Multiple options to consider: ASIC-based NICs Multicore SoC NICs FPGA NICs Burn host cores. ASIC.

WHICH IS BEST?

What are the advantages and disadvantages of these three hardware options along with using the host CPU?

Page 18: Azure Accelerated Networking: SmartNICs in the Public CloudTHE DESIGN OF THE SMARTNIC. Multiple options to consider: ASIC-based NICs Multicore SoC NICs FPGA NICs Burn host cores. ASIC.

DETAILED COMPARISION

ASICs SoCs FPGAs Host CPUs

Host CPU Utilization ✅ ✅ ✅ ❌

Programmability ❌ ✅ ✅ ✅

Throughput ✅ ❌ ✅ ❌

Future-proof ❌ ✅ ✅ ✅

Compatibility ✅ ✅ ✅

Single Connection Performance

✅ ❌ ✅ ❌

100 GbE ✅ ❌ ✅ ❌

Serviceability ❌ ✅ ✅ ✅

Ease of Development ❌ ✅ ✅ ✅

Power Efficiency ✅ ❌ ✅ ❌

Page 19: Azure Accelerated Networking: SmartNICs in the Public CloudTHE DESIGN OF THE SMARTNIC. Multiple options to consider: ASIC-based NICs Multicore SoC NICs FPGA NICs Burn host cores. ASIC.

SYSTEM DESIGN

Page 20: Azure Accelerated Networking: SmartNICs in the Public CloudTHE DESIGN OF THE SMARTNIC. Multiple options to consider: ASIC-based NICs Multicore SoC NICs FPGA NICs Burn host cores. ASIC.

ACCELNET ARCHITECTURE

Page 21: Azure Accelerated Networking: SmartNICs in the Public CloudTHE DESIGN OF THE SMARTNIC. Multiple options to consider: ASIC-based NICs Multicore SoC NICs FPGA NICs Burn host cores. ASIC.

SERVICEABILITY

Question: If all traffic goes through AccelNet, and the AccelNet is exposed as a VF directly into the VM, how does Azure maintain uptime when performing service on the FPGA or GFT?

Page 22: Azure Accelerated Networking: SmartNICs in the Public CloudTHE DESIGN OF THE SMARTNIC. Multiple options to consider: ASIC-based NICs Multicore SoC NICs FPGA NICs Burn host cores. ASIC.

SERVICEABILITY

Page 23: Azure Accelerated Networking: SmartNICs in the Public CloudTHE DESIGN OF THE SMARTNIC. Multiple options to consider: ASIC-based NICs Multicore SoC NICs FPGA NICs Burn host cores. ASIC.

KERNEL-BYPASS PROTOCOLS

DPDK: Poll Mode Driver (PMD) transparently binds between the VMBUs and the VF Exposes all DPDK APIs

RDMA: Fallback to TCP – open area of research

Page 24: Azure Accelerated Networking: SmartNICs in the Public CloudTHE DESIGN OF THE SMARTNIC. Multiple options to consider: ASIC-based NICs Multicore SoC NICs FPGA NICs Burn host cores. ASIC.

PERFORMANCE

Page 25: Azure Accelerated Networking: SmartNICs in the Public CloudTHE DESIGN OF THE SMARTNIC. Multiple options to consider: ASIC-based NICs Multicore SoC NICs FPGA NICs Burn host cores. ASIC.

BATTLE OF THE CLOUDS

Page 26: Azure Accelerated Networking: SmartNICs in the Public CloudTHE DESIGN OF THE SMARTNIC. Multiple options to consider: ASIC-based NICs Multicore SoC NICs FPGA NICs Burn host cores. ASIC.

DISCUSSION QUESTIONS

1. What are the security concerns of AccelNet?

2. What are the drawbacks of AccelNet?

3. Which is the better approach to take – AccelNet vs SNAP?

4. Should public clouds charge customers for the complexity of their networks?


Recommended