Bertha: Tunneling Through the Network API
Akshay Narayan Aurojit Panda Mohammad Alizadeh Hari Balakrishnan Arvind Krishnamurthy ScoB Shenker
MIT, NYU, UW, UC Berkeley, ICSI 1
Bertha: Tunneling Through the Network API Akshay Narayan Aurojit - - PowerPoint PPT Presentation
1 Bertha: Tunneling Through the Network API Akshay Narayan Aurojit Panda Mohammad Alizadeh Hari Balakrishnan Arvind Krishnamurthy ScoB Shenker MIT, NYU, UW, UC Berkeley, ICSI Recent Developments 2 New Network Infrastructure 3 New:
Akshay Narayan Aurojit Panda Mohammad Alizadeh Hari Balakrishnan Arvind Krishnamurthy ScoB Shenker
MIT, NYU, UW, UC Berkeley, ICSI 1
Recent Developments
2
New Network Infrastructure
3
SmartNICs P4 Switches FPGAs App Routers Middleboxes Network New: ApplicaQon funcQonality in the network New: Network devices with programmable dataplane
Architectural API
4
SmartNICs P4 Switches FPGAs App Routers Middleboxes Network APIs encode tradiQonal end-to-end semanQcs Sockets DPDK GRPC QUIC
5
What would an API that encoded applicaQon offload semanQcs look like?
Want: An Interface
6
Offload Implementation (P4 Sharding Implementation) Platform Configured with Offloads (Configure server for KV-store) Route Traffic through offloads (Configure SDN Control Plane)
Application Developer System Administrator Network Operator
Offload-Aware Implementation (Sharded KV-Store)
Offload Developer
Implementations declares sequence of
Offload implementation and metadata
Application Offloads Today Proposeded Interface Application Developer Offload Developer
Server A-M Shard
Offload Deployment
7 N-Z Shard Client P4 Switch SmartNIC Offload deployment scenarios
Out-of-Band CoordinaQon
8 Server Offload Switch config + SDN policy Offload developer ApplicaQon developer Network operator System administrator
9
What would an API that encoded applicaQon offload semanQcs look like? Our Answer: Chunnels + Bertha
Chunnels
10
hBps:/ /upload.wikimedia.org/wikipedia/commons/c/cb/Fresque_25_ans_Eurotunnel.jpg
Best-Effort End-To-End Packets Chunnel(s) Bertha Bertha
hBps:/ /en.wikipedia.org/wiki/File:Front_of_model_of_tunnel_boring_machine_at_Milepost_31.JPG
Chunnels
11 P4 Switch ApplicaQon
From the applicaQon’s perspecQve, in-machine and in-network offloads are the same
Bertha Chunnel
Chunnel ProperQes
12 Best-Effort End-To-End Packets
Fallback: FuncQonality implementable by end-host applicaQon sohware
Chunnel ProperQes
13
ApplicaQon Relevance
Fallback: Portability
Chunnel ProperQes
14 Fallback: Portability
Composable
ApplicaQon relevance: Safety
Encrypt HTTP/2 TCP
Bertha ConnecQon
Bertha Roles
15 P4 Switch Kernel, eBPF Bertha NegoQaQon Discovery NegoQaQon: Figure out which Chunnel implementaQons are available (e.g., eBPF, Kernel) Decide which implementaQon to use. Discovery:
Chunnels
init() / teardown() ApplicaQon Network
NegoQaQon
16 SmartNIC Kernel, eBPF Bertha NegoQaQon Discovery ApplicaQon “I need an encrypQon Chunnel” ConsideraQons: Developer preference Offload availability Network policy “I implement encrypQon”
Encrypt
17
Cool ImplicaQons
Research DirecQons
18 Scheduling MulQplexing offloads between connecQons and applicaQons OpQmizaQon AutomaQc reordering/subsQtuQon of parts of the Chunnel specificaQon P4 Switch Kernel, eBPF Bertha NegoQaQon Discovery
Chunnels
init() / teardown() ApplicaQon Network
Chunnel OpQmizaQon
19
Encrypt HTTP/2 TCP
SmartNIC EncrypQon, TCP Chunnel ImplementaQons To use these offloads, must to traverse PCIe 3x
Chunnel OpQmizaQon
20 Reordering reduces data movement
HTTP/2 Encrypt TCP
SmartNIC EncrypQon, TCP Chunnel ImplementaQons Similar to opQmizaQons in Weld, TensorFlow, ONNX
Client Push
21 P4 Switch Server Bertha NetAdvisor Chunnel Client
End
22 Contact: akshayn@mit.edu P4 Switch Kernel, eBPF Bertha NegoQaQon Discovery
Chunnels
init() / teardown() ApplicaQon Network